Skip to content

Geo: Improve missing on primary failure reason

What does this MR do and why?

Describe in detail what your merge request does and why.

For blob data types replicated by the Self-Service Framework, when the blob is missing on the primary site, if we treat it as a sync failure !76801 (merged), then:

Before

The sync failure message is Non-success HTTP response status code 404.

After

The sync failure message is The file is missing on the Geo primary site.

This change will help sysadmins and GitLab support engineers to diagnose the problem more quickly.

Part of #348745 (closed)

This change is effectively behind the existing feature flag #348590 (closed) since there is no behavior change if the FF is off.

How to set up and validate locally

Numbered steps to set up and validate the change are strongly suggested.

  1. Set up Geo
  2. Create an issue and attach an image to the description
  3. In Rails console on the Geo primary site: File.unlink(Upload.last.absolute_path)
  4. In Rails console on the Geo secondary site: r = Upload.last.replicator; r.send(:download); r.registry.last_sync_failure
  5. That last command should output "The file is missing on the Geo primary site"

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Michael Kozono

Merge request reports