Skip to content

gitlab-ce: backup restore must re-create pools in Gitaly

When restoring repositories a backup we may come across repositories that are meant to be in a pool according to the SQL part of the database dump. When this is the case we must make sure we create a pool repository for the first project we encounter that is in a pool. And all repos belonging to projects in the pool must have their pool links re-established with PoolService::LinkRepositoryToPool.

Note that this is describing the absolute minimum to retain consistence. After a restore, all deduplication would have been undone. It would gradually be restored.

It would be better if all restored repositories are properly deduplicated during the restore, but in the interest of limiting scope I think we should cut that from the first iteration.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information