mirror of
https://github.com/pgsty/minio.git
synced 2026-10-10 19:55:59 +03:00
proactive deep heal object when a bitrot is detected (#9192)
This commit is contained in:
+7
-1
@@ -295,7 +295,13 @@ func (xl xlObjects) getObject(ctx context.Context, bucket, object string, startO
|
||||
// we return from this function.
|
||||
closeBitrotReaders(readers)
|
||||
if err != nil {
|
||||
return toObjectErr(err, bucket, object)
|
||||
if decodeHealErr, ok := err.(*errDecodeHealRequired); ok {
|
||||
go deepHealObject(pathJoin(bucket, object))
|
||||
err = decodeHealErr.err
|
||||
}
|
||||
if err != nil {
|
||||
return toObjectErr(err, bucket, object)
|
||||
}
|
||||
}
|
||||
for i, r := range readers {
|
||||
if r == nil {
|
||||
|
||||
Reference in New Issue
Block a user