simplify MRF, converge it to regular healing (#17026)

This commit is contained in:
Harshavardhana
2023-04-19 07:47:42 -07:00
committed by GitHub
parent 8a81e317d6
commit 84f31ed45d
7 changed files with 65 additions and 197 deletions

View File

@@ -225,6 +225,19 @@ func (sys *S3PeerSys) MakeBucket(ctx context.Context, bucket string, opts MakeBu
quorum := (len(sys.allPeerClients) / 2) + 1
err := reduceWriteQuorumErrs(ctx, errs, bucketOpIgnoredErrs, quorum)
// Perform MRF on missing buckets for temporary errors.
for _, err := range errs {
if err == nil {
continue
}
if errors.Is(err, errPeerOffline) || errors.Is(err, errDiskNotFound) ||
isNetworkError(err) {
globalMRFState.addPartialOp(partialOperation{
bucket: bucket,
})
}
}
return toObjectErr(err, bucket)
}