Skip to content

[object_store] Completing an empty Multipart Upload fails for AWS S3 #91

Description

@andrebsguedes

Describe the bug
Trying to complete an empty Multipart Upload to AWS S3 fails with error:
Generic S3 error: Error performing complete multipart request: Client error with status 400 Bad Request: <?xml version="1.0" encoding="UTF-8"?> <Error><Code>MalformedXML</Code><Message>The XML you provided was not well-formed or did not validate against our published schema.</Message>...

This happens because the library sends no parts on the completion request. AWS S3 expects at least a single empty part (previously uploaded).

To Reproduce

Create an AsyncWrite from put_multipart of AmazonS3 store and try to run AsyncWriteExt::shutdown without writing any data to it.

Expected behavior

The completion request returns successfully and an empty object is created

Additional context

AWS S3 does not impose any minimum part size for the last part of a completion request.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions