Store hashed storage paths in the database
EE port of https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/23143
What does this MR do?
This will store the disk_path
of repositories on hashed storage in the database. It creates adds a relation with the project, so a project can be looked up by disk_path
.
A new table project_repositories
is introduced. It has a foreign key to projects
and a string to store the disk_path
.
When a project is created, with hashed storage enabled, a record is created. Or when a project is migrated, a record is created.
What does this MR not do?
It does not take legacy storage projects into account. So when a project is created, or moved, no changes are saved in the project_repositories
table.
What are the relevant issue numbers?
Start for https://gitlab.com/gitlab-org/gitlab-ce/issues/48527
Edited by Nick Thomas