chore(storage): Improve error messaging for MP upload missing ETag #14170
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of changes
This PR improves the error messaging around missing ETag parameter when completing multipart uploads. When using non-Amplify configured S3 buckets, it is possible to miss configuring the
ExposeHeaders
element of the bucket CORS configuration. When hitting this error, the messaging is too vague:Invalid parameter for CompleteMultipartUpload API
and the input is logged as[Object object]
. This PR adds more context specifically around the missing ETag parameter and stringifies the input for better debugging clarity in the future.Issue #, if available
#13409
Description of how you validated changes
Reproduced the error by using Amplify to upload to a S3 bucket without ETag as exposed header in CORS configuration. Validated that:
Checklist
yarn test
passesChecklist for repo maintainers
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.