feat(replication): structure active check results - #5208
Merged
Conversation
Contributor
|
CLA requirements are satisfied for this pull request. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Related Issues
Closes rustfs/backlog#1417
Related: rustfs/backlog#1381, rustfs/backlog#1361, rustfs/backlog#1496
Summary of Changes
bucket, versioning, object-lock, put, delete-marker, version-delete, and
cleanup phase.
publish the reserved probe namespace in the response contract.
.rustfs.sys/replication-check/, preflight exact object versions, and use aconditional put so user/concurrent objects are never overwritten or removed.
deletion after delete-marker failures, and report cleanup failure separately.
endpoints, credentials, signed URLs, or raw server details.
contract and operator implications.
Verification
ignored.
cleanup with zero remaining target versions/delete markers and an object-lock
mismatch that performed no mutation.
cargo clippy --workspace --all-targets --all-features -- -D warningsmake pre-commitmake pre-pr(all checks passed: 10,299 workspace tests and all doctests)cargo fmt --all --checkgit diff --checkAdversarial review verdicts:
Impact
The
replication-checksuccess body changes from empty to structured JSON onRustFS servers. The operation remains a signed S3 GET extension, but its active
temporary mutations are now explicit. Older clients that require an empty body
must be updated; rustfs/backlog#1496 tracks typed rendering plus legacy
empty-body compatibility.
Additional Notes
The reserved namespace and conditional preflight prevent this diagnostic from
deleting an object it did not create. Cleanup errors are deliberately returned
as failed structured outcomes even when the earlier probe phases succeeded.
Thank you for your contribution! Please ensure your PR follows the community standards (CODE_OF_CONDUCT.md). If this is your first contribution, review the CLA document and sign it by commenting
I have read and agree to the CLA.on the PR.