Geo: Treat missing files as sync failures
This is a small but significant design change to files/blobs replicated by the Geo Self-Service Framework. - Before: When a file is missing on the primary, and a secondary attempts to sync it, the secondary considers it "synced", since its state matches the primary. - After: With this change, the secondary considers the sync "failed", since it was unable to sync the file and this is an undesirable state. Other implications: For blob types which have Geo verification enabled, this change short-circuits a logical loop in which sync succeeds but verification fails and then sync becomes failed and then sync gets retried. This loop affects blobs replicated *and* verified by the Geo Self-Service Framework, including: - Package Files - Terraform State Versions - Pipeline Artifacts And soon to include: - LFS Objects - Pages Deployments - Uploads - CI Job Artifacts This change is feature flagged behind `geo_treat_missing_files_as_sync_failed` so we can test in staging. Also I intend to enable it by default before removing it. Therefore customers will be able to easily switch back to old behavior for a whole milestone, in case of any unforeseen problems with this design change. Changelog: changed EE: true
Showing
Please register or sign in to comment