-
Notifications
You must be signed in to change notification settings - Fork 541
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
'mc pipe' with '--enc-c=' fails with 'Unsupported header 'x-amz-checksum-algorithm' received for this API call.' when sending to Backblaze/Wasabi. #4974
Comments
We don't provide workarounds for incomplete S3 implementation. |
Well, I've just tested with AWS S3 and the minio play server and it isn't working with either of those either. So your dismissal of this as being due to incomplete S3 implementation appears premature. play.min.io: AWS S3: |
Yeah, that seems more like a bug. Seems like the CompleteMultipartUpload doesn't include the SSE-C key:
|
I will take a look at https://github.com/minio/minio-go |
That was fast work 🥇 , thanks so much 👍 . |
Expected behavior
I expected
mc pipe
with--enc-c
to successfully upload to Backblaze or Wasabi (the two providers I've tested with).My use case: I'm piping the output of
zfs send
tomc pipe
to backup zfs snapshots and wish to use a SSE-C key.Actual behavior
When using
mc pipe
with--enc-c
to backup to Backblaze or Wasabi I'm receiving the following error:mc: <ERROR> Unable to write to one or more targets. Unsupported header 'x-amz-checksum-algorithm' received for this API call.
Note:
mc cp
works fine, andmc pipe
without--enc-c
also works fine, butmc pipe
with--enc-c
returns the above error when backing up to Backblaze or Wasabi.Steps to reproduce the behavior
Create a random test file to try upload:
dd if=/dev/urandom of=/tmp/rand bs=100K count=1
Try to upload the file:
cat /tmp/rand | mc pipe backblaze/{TARGET_BUCKET}/rand --enc-c='backblaze/{TARGET_BUCKET}/=0000000000000000000000000000000000000000000'
The above example just uses '0000000000000000000000000000000000000000000' as the base64 encoded SSE-C key for simplicity sake. Obviously replace {TARGET_BUCKET} with your bucket name and replace 'backblaze' with your configured alias.
mc --version
System information
Debian 12, Linux (x86_64)
Thanks.
The text was updated successfully, but these errors were encountered: