[EE] Refactor Hashed Storage for future Rollback functionality
What does this MR do?
This is the EE backport from https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/24402
What are the relevant issue numbers?
- https://gitlab.com/gitlab-org/gitlab-ce/issues/53966
- https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/23955
- https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/24402
Does this MR meet the acceptance criteria?
-
Tests added for this feature/bug -
Conforms to the code review guidelines -
Conforms to the merge request performance guidelines -
Conforms to the style guides -
Conforms to the database guides
Edited by Gabriel Mazetto