mirror of
https://github.com/rustfs/rustfs.git
synced 2026-09-06 20:19:14 +00:00
6141694c10
A target that mints its own version ids (Wasabi, AWS S3) answers a version-addressed HEAD for the source uuid with 404, which the worker read as "replica missing": every heal, MRF retry and existing-object resync re-drive PUT the object again and minted one more target version, while the source reported COMPLETED. Record a per-target VersionIdentityCapability verdict from every replication write response and from replication-check's VersionFidelity phase. On a 404 from a target proven to mint its own ids, locate the replica by exact key and ETag through ListObjectVersions, HEAD the id the target assigned, and reuse the ETag-comparison fallback in the heal decision, the existing-object resync path and the resync verification. Keep the verdict across target edits that address the same service, since a resync start rewrites the target entry in place. Refs: rustfs/backlog#2340