-
Notifications
You must be signed in to change notification settings - Fork 2.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Etag in metadata is assumed to be hex string #1371
Comments
What problems is this causing? Are you using the S3 client with an alternative S3 implementation? |
This is used with apm and they tend to attach some metadata for their internal usage. Not sure how easy is will it be for you to refactor this code. |
|
Have a look at the etag examples below in the webpage. |
Unfortunately S3 uses the etag for checksum validation, so if it's changed we can't validate the checksum. You can disable GET checksum validation with the I'm not sure what we could do if they're changing the etag. Do you have any suggestions as to what you'd expect the SDK to do? |
Hi, thanks for the information. At this point in time I guess it's fine as they moved out of etag. However if we can do something to handle this gracefully would help. Like make this a key value so that others can modify it and u can still extract ur value from it. Just a suggestion. |
It's tricky to handle people mutating things in ways we can't predict. They could prepend data, append data, override it altogether, etc. If it was a predictable, standardized mutation, like "data is always appended with a semicolon in front of it", we could probably handle it, but that's not guaranteed here. I'm glad you found a workaround! |
While this is mostly true that the etag is hex string. But RFC define etag as "opaque quoted string"
https://tools.ietf.org/html/rfc7232#page-9
In AmazonS3Client.java getEtag usage can cause issues if metadata.etag is not hex as it's assumed in the entire file.
The text was updated successfully, but these errors were encountered: