Skip to content

Fix(multipart-put): add parts on multipart complete#403

Merged
klauspost merged 1 commit intominio:masterfrom
Warh40k:fix-multipart-put-complete
Jun 20, 2025
Merged

Fix(multipart-put): add parts on multipart complete#403
klauspost merged 1 commit intominio:masterfrom
Warh40k:fix-multipart-put-complete

Conversation

@Warh40k
Copy link
Contributor

@Warh40k Warh40k commented Jun 19, 2025

When I tried to use multipart-put to test concurrent multipart uploads, I expected it to create multipart parts completely, just like warp-multipart.
However, the multipart-put benchmark always sends an empty CompleteMultipartUploadRequest XML to the storage, which leads to server errors:

<CompleteMultipartUpload xmlns=\"http://s3.amazonaws.com/doc/2006-03-01/\"></CompleteMultipartUpload>

For example, I receive an error when testing with MinIO:

<Error><Code>InvalidRequest</Code><Message>You must specify at least one part</Message>...

The issue occurs because multipart-put does not include part information in completeMultipartInfo, whereas the multipart benchmark does.

Steps to reproduce:

  1. Deploy default Minio (e.g. with Docker)
  2. run benchmark as follows and you will see many <warp: complete multipart upload> errors:
./warp multipart-put --host 127.0.0.1:9000 \
                      --access-key=minioadmin \
                      --secret-key=minioadmin \
                          --parts=10 --part.size=5MiB --part.concurrent=5 --concurrent=5 \
                          --duration=5s \
                          --bucket=testbucket

Signed-off-by: Warh40k <nicita.zinkevitch@yandex.ru>
@klauspost klauspost merged commit fc415c8 into minio:master Jun 20, 2025
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants