Geo: Avoid raising a Sidekiq job failure when a blob sync fails

What does this MR do and why?

This MR changes the error handling behavior in Geo::BlobDownloadService to prevent sync failures from causing Sidekiq job failures.

References

Closes #524762

How to set up and validate locally

  • Set up a Geo secondary instance using GDK and work from there (not the primary).
  • Configure a package file object for replication. Find a package_file or create one if needed, and keep its id. e.g:
Packages::PackageFile.last

Simulate a sync failure.

Geo::SyncWorker.perform_async('package_file ', id_of_the_package_file)
  • Verify the registry is marked as failed but the Sidekiq job completes successfully.
  • Check that the error is still logged and tracked in Sentry.

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Related to #524762

Edited by Victor Prêté

Merge request reports

Loading