You need to sign in or sign up before continuing.
Geo LFS sync: if object does not exist we retry endlessly (but with backoff time)
As backoff time exists it's not that urgent but the problem exists. The problem here is that these failures spoil the general picture of the sync.
Related gitlab-com/migration#217 (closed)
Possible solutions:
- Mark the sync as successful when we get 404 like we do for repositories. But here is a little different case as we never get back to LFS object when we marked it as successfully downloaded by accident(if we had false 404 error because of infrastructure problems as an example). So this is a bit different case.
- We have to do regular checks on the primary side which is expensive.
- What if we create a column
lfs_objects.pending_delete
and every timelfs_object.file.exists?
returnsfalse
we just setpending_delete
to true(or maybe some date) and a dedicated worker would just check those objects again to remove them if it confirmed that file does not exist. This is the basic idea but we can implement a more complex solution.
Edited by Valery Sizov