Skip to content

feature/s3/transfermanager: support serializable cross-process resumable multipart uploads #3500

Description

@dongjune8931

Describe the feature

Add opt-in, serializable multipart upload resume support to
feature/s3/transfermanager.

When resumable behavior is enabled, a failed or canceled multipart upload would preserve completed parts and return a resume token containing the upload ID, part size, object size, and completed parts.

A later process could pass the token and the original seekable source to a resume API. The transfer manager would verify the state using ListParts, upload only missing parts, and complete the multipart upload.

The existing abort-on-failure behavior should remain the default to avoid unexpected storage costs.

This is related to #113, but specifically proposes an implementation for the new feature/s3/transfermanager. Similar functionality is available in the Java v2 SDK through ResumableFileUpload.

Use Case

Large uploads over unstable networks currently restart from the beginning after the multipart upload is aborted. Applications should be able to preserve completed parts and continue the upload in another process.

Proposed Solution

Introduce a serializable resume token and a method such as ResumeUploadObject. The exact API is open for maintainer feedback.
I would like to work on the implementation if the maintainers agree with the direction.

Other Information

No response

Acknowledgements

  • I may be able to implement this feature request
  • This feature might incur a breaking change

AWS Go SDK V2 Module Versions Used

github.com/aws/aws-sdk-go-v2/feature/s3/transfermanager v0.3.7

Go version used

go version go1.22.12 darwin/arm64

Metadata

Metadata

Assignees

No one assigned

    Labels

    feature/s3/transfermanagerPertains to S3 transfer manager HLL (feature/s3/manager).

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions