diff --git a/cmd/api-errors.go b/cmd/api-errors.go index 35dd5bb64..7bb60f87e 100644 --- a/cmd/api-errors.go +++ b/cmd/api-errors.go @@ -725,6 +725,8 @@ func toAPIErrorCode(err error) (apiErr APIErrorCode) { apiErr = ErrNotImplemented case PolicyNotFound: apiErr = ErrNoSuchBucketPolicy + case PartTooBig: + apiErr = ErrEntityTooLarge default: apiErr = ErrInternalError } diff --git a/cmd/gateway-azure.go b/cmd/gateway-azure.go index 15ad173fe..162154e7b 100644 --- a/cmd/gateway-azure.go +++ b/cmd/gateway-azure.go @@ -142,6 +142,8 @@ func azureToObjectError(err error, params ...string) error { err = BucketExists{Bucket: bucket} case "InvalidResourceName": err = BucketNameInvalid{Bucket: bucket} + case "RequestBodyTooLarge": + err = PartTooBig{} default: switch azureErr.StatusCode { case http.StatusNotFound: diff --git a/cmd/object-api-errors.go b/cmd/object-api-errors.go index 0d8802dfc..8af37362a 100644 --- a/cmd/object-api-errors.go +++ b/cmd/object-api-errors.go @@ -343,6 +343,13 @@ func (e PartTooSmall) Error() string { return fmt.Sprintf("Part size for %d should be atleast 5MB", e.PartNumber) } +// PartTooBig returned if size of part is bigger than the allowed limit. +type PartTooBig struct{} + +func (e PartTooBig) Error() string { + return "Part size bigger than the allowed limit" +} + // NotImplemented If a feature is not implemented type NotImplemented struct{}