mirror of
https://github.com/rustfs/rustfs.git
synced 2026-07-27 00:38:16 +00:00
0fad356450
Replication deletes dropped the S3 `versionId` query parameter for every replication request, conveying the version only via the internal x-*-source-version-id header. A generic (non-MinIO/RustFS) S3 target ignores that header, so a version purge degenerated into a delete-marker creation while the source still stamped VersionPurgeStatus=Complete — a silent divergence. Only omit the query `versionId` when propagating a delete-marker CREATION (the target must mint its own marker); version purges, delete-marker purges and force deletes now address the exact version. Extracted into resolve_delete_api_version_id with unit coverage. Fixes rustfs/backlog#857