Geo: Replicate deletion of remote stored files
When this setting is enabled, Geo syncs to secondaries' object storage.
But we never remove anything from object storage, so wasted storage will grow when replicated by Geo. (Note that this feature is in Beta: https://docs.gitlab.com/ee/administration/geo/replication/object_storage.html#enabling-gitlab-managed-object-storage-replication)
Deletions are done by FileRegistryRemovalWorker
as part of:
- Processing delete events
- A background process constantly reconciling any primary/secondary differences (
RegistryConsistencyWorker
)
Proposal
-
FileRegistryRemovalWorker
should be able to delete remote-stored files -
FileRegistryRemovalWorker
should be used properly to also delete remote-stored files (e.g. passing it what the local file path would be if the file were stored locally will not work)
Edited by Michael Kozono