-
Notifications
You must be signed in to change notification settings - Fork 244
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
GetObject() fails when getting object multipart uploaded with additional checksum. #764
Comments
thanks for the report! at the very least we shouldn't be panicking on that. cc @Velfi to take a look |
I've been able to reproduce this issue. Currently working on a fix. |
The fix is in, it's just pending release now. |
@Velfi Thank you. new version(aws-sdk-s3 0.27.0) doesn’t panic, showing the following message.
|
|
Describe the bug
GetObject() with
checksum_mode(ChecksumMode::Enabled)
fails in case of object multipart uploaded with addtional checksum.Non multipart object download works.
Expected Behavior
An object multipart uploaded with addtional checksum have special checksum syntax.
GetObject() with checksum_mode(ChecksumMode::Enabled) should handle the checksum correctly.
Current Behavior
panic happens.
Logs
Reproduction Steps
An easy way to do this is to upload (16 MiB over) in the AWS Management Console.
Sample object information is as follows
In this case, it try to decode "ykIsJpmJHik08T+RZsvK2VGP88Nfw3P3v2lvX6QbYhs=-2" .
"-2" is invalid base64 data.
Possible Solution
Call get-object-attributes API, verify each parts, and whole objects.
Additional Information/Context
https://awslabs.github.io/smithy/1.0/spec/aws/aws-core.html#http-response-checksums
https://docs.rs/aws-sdk-s3/latest/aws_sdk_s3/output/struct.GetObjectOutput.html#method.checksum_sha256
https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
Version
Environment details (OS name and version, etc.)
System Version: macOS 13.2.1 (22D68) Kernel Version: Darwin 22.3.0 arm64 rustc 1.68.1 (8460ca823 2023-03-20)
Logs
No response
The text was updated successfully, but these errors were encountered: