fix: avoid printing certain errors under few locations (#16631)

This commit is contained in:
Harshavardhana 2023-02-17 01:40:31 -08:00 committed by GitHub
parent a7188bc9d0
commit 6ea150fd68
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 22 additions and 19 deletions

View File

@ -86,7 +86,11 @@ func (api objectAPIHandlers) PutBucketPolicyHandler(w http.ResponseWriter, r *ht
bucketPolicy, err := policy.ParseConfig(bytes.NewReader(bucketPolicyBytes), bucket) bucketPolicy, err := policy.ParseConfig(bytes.NewReader(bucketPolicyBytes), bucket)
if err != nil { if err != nil {
writeErrorResponse(ctx, w, toAPIError(ctx, err), r.URL) writeErrorResponse(ctx, w, APIError{
Code: "ErrMalformedXML",
HTTPStatusCode: http.StatusBadRequest,
Description: err.Error(),
}, r.URL)
return return
} }

View File

@ -82,6 +82,11 @@ func (a kmsAPIHandlers) KMSMetricsHandler(w http.ResponseWriter, r *http.Request
return return
} }
if _, ok := GlobalKMS.(kms.KeyManager); !ok {
writeErrorResponseJSON(ctx, w, errorCodes.ToAPIErr(ErrNotImplemented), r.URL)
return
}
metrics, err := GlobalKMS.Metrics(ctx) metrics, err := GlobalKMS.Metrics(ctx)
if err != nil { if err != nil {
writeErrorResponseJSON(ctx, w, toAdminAPIErr(ctx, err), r.URL) writeErrorResponseJSON(ctx, w, toAdminAPIErr(ctx, err), r.URL)

View File

@ -316,11 +316,11 @@ func (z *erasureServerPools) listMerged(ctx context.Context, o listPathOptions,
} }
for _, err := range errs { for _, err := range errs {
if err == nil || contextCanceled(ctx) { if errors.Is(err, io.EOF) {
allAtEOF = false
continue continue
} }
if err.Error() == io.EOF.Error() { if err == nil || contextCanceled(ctx) || errors.Is(err, context.Canceled) {
allAtEOF = false
continue continue
} }
logger.LogIf(ctx, err) logger.LogIf(ctx, err)

View File

@ -376,7 +376,7 @@ func (r *metacacheReader) filter(o listPathOptions) (entries metaCacheEntriesSor
entries.o = append(entries.o, entry) entries.o = append(entries.o, entry)
return entries.len() < o.Limit return entries.len() < o.Limit
}) })
if (err != nil && err.Error() == io.EOF.Error()) || pastPrefix || r.nextEOF() { if (err != nil && errors.Is(err, io.EOF)) || pastPrefix || r.nextEOF() {
return entries, io.EOF return entries, io.EOF
} }
return entries, err return entries, err
@ -534,7 +534,7 @@ func (er *erasureObjects) streamMetadataParts(ctx context.Context, o listPathOpt
// We stopped within the listing, we are done for now... // We stopped within the listing, we are done for now...
return entries, nil return entries, nil
} }
if err != nil && err.Error() != io.EOF.Error() { if err != nil && !errors.Is(err, io.EOF) {
switch toObjectErr(err, minioMetaBucket, o.objectPath(partN)).(type) { switch toObjectErr(err, minioMetaBucket, o.objectPath(partN)).(type) {
case ObjectNotFound: case ObjectNotFound:
retries++ retries++
@ -940,15 +940,6 @@ func listPathRaw(ctx context.Context, opts listPathRawOptions) (err error) {
} }
} }
w.CloseWithError(werr) w.CloseWithError(werr)
if werr != io.EOF && werr != nil &&
werr.Error() != errFileNotFound.Error() &&
werr.Error() != errVolumeNotFound.Error() &&
werr.Error() != errDiskNotFound.Error() &&
werr.Error() != errUnformattedDisk.Error() &&
!errors.Is(werr, context.Canceled) {
logger.LogIf(ctx, werr)
}
}() }()
} }

View File

@ -91,12 +91,15 @@ func (kms secretKey) Stat(context.Context) (Status, error) {
}, nil }, nil
} }
func (secretKey) Metrics(ctx context.Context) (kes.Metric, error) { func (secretKey) Metrics(context.Context) (kes.Metric, error) {
return kes.Metric{}, errors.New("kms: metrics are not supported") return kes.Metric{}, errors.New("kms: metrics not supported")
} }
func (secretKey) CreateKey(context.Context, string) error { func (kms secretKey) CreateKey(_ context.Context, keyID string) error {
return errors.New("kms: creating keys is not supported") if keyID == kms.keyID {
return nil
}
return fmt.Errorf("kms: creating custom key %q is not supported", keyID)
} }
func (kms secretKey) GenerateKey(_ context.Context, keyID string, context Context) (DEK, error) { func (kms secretKey) GenerateKey(_ context.Context, keyID string, context Context) (DEK, error) {