Skip to content

[Bug]: Gateway's ListMultipartUploads doesn't respect S3 ordering #9554

@itaiad200

Description

@itaiad200

What happened?

From S3 Docs:

In the ListMultipartUploads response, the multipart uploads are sorted based on two criteria: 1. Key-based sorting - Multipart uploads are initially sorted in ascending order based on their object keys. 2. Time-based sorting - For uploads that share the same object key, they are further sorted in ascending order based on the upload initiation time. Among uploads with the same key, the one that was initiated first will appear before the ones that were initiated later.

When a call to S3 Gateway ListMultipartUpload is performed, we list multipart uploads from the object store: code. Since the ordering of lakeFS paths doesn't necessarily align with the underlying physical address 1, the order of items in the response is wrong. Things are worse where the maxUploads parameter is added to the request, which results in the wrong item returned by the request.

Expected behavior

Gateway's List MPUs should respect S3 ordering

lakeFS version

1.70.1

Footnotes

  1. logical path foo1 is mapped to physical address bar2. foo2 is mapped to bar1. During multipart process, the in-progress MP paths are returned from the object store and not from lakeFS DB.

Metadata

Metadata

Assignees

Labels

P3area/gatewayChanges to the gatewaybugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions