fix: ignore transient errors in read path (#18006)

Errors such as

```
returned an error (context deadline exceeded) (*fmt.wrapError)
```

```
(msgp: too few bytes left to read object) (*fmt.wrapError)
```
This commit is contained in:
Harshavardhana
2023-09-11 15:29:59 -07:00
committed by GitHub
parent 41de53996b
commit 9f7044aed0
2 changed files with 4 additions and 1 deletions

View File

@@ -46,6 +46,7 @@ import (
"github.com/minio/pkg/v2/mimedb"
"github.com/minio/pkg/v2/sync/errgroup"
"github.com/minio/pkg/v2/wildcard"
"github.com/tinylib/msgp/msgp"
uatomic "go.uber.org/atomic"
)
@@ -578,6 +579,9 @@ func readAllXL(ctx context.Context, disks []StorageAPI, bucket, object string, r
errFileVersionNotFound,
io.ErrUnexpectedEOF, // some times we would read without locks, ignore these errors
io.EOF, // some times we would read without locks, ignore these errors
msgp.ErrShortBytes,
context.DeadlineExceeded,
context.Canceled,
}
ignoredErrs = append(ignoredErrs, objectOpIgnoredErrs...)