Projects::UpdateRepositoryStorageService should verify that mirroring was correct using checksum
When a repository is moved to another storage shard, the data is not really validated. This leads to manual overhead for an SRE managing the process.
Gitaly provides an Checksum and FSCK interface, which is the best way to determine if the moved repository is fine. GitLab should checksum the old repository and the new one to verify the data is the same. Afterwards an fsck on the new repository too, as additional step.
It's possible to verify that data is moved correctly. The service should fail if checksums do not match.
Related issue https://gitlab.com/gitlab-org/gitlab/issues/35864
Edited by Zeger-Jan van de Weg