Merge heal dry-run fixes (#280)

Takes the dry-run part of PR #280 and credits its author. The parallel deep-verification part stays in #280 for separate review.
This commit is contained in:
Feng Ruohang
2026-11-06 12:59:34 +08:00
6 changed files with 370 additions and 4 deletions
+5
View File
@@ -343,6 +343,11 @@ func (er *erasureObjects) healObject(ctx context.Context, bucket string, object
readQuorum, _, err := objectQuorumFromMeta(ctx, partsMetadata, errs, er.defaultParityCount)
if err != nil {
if dryRun {
// A metadata quorum failure must not delete dangling data in dry-run.
return er.defaultHealResult(FileInfo{}, storageDisks, storageEndpoints,
errs, bucket, object, versionID), err
}
m, derr := er.deleteIfDangling(ctx, bucket, object, partsMetadata, errs, nil, ObjectOptions{
VersionID: versionID,
})