Skip to content

ListObjects: Cursor issue with prefix-like objects #174

@amwolff

Description

@amwolff

I found an API limitation of ListObjects that might cause issues for software that creates objects disguised as prefixes (this is common for software that talks to S3). If you upload:

  • object
  • object/ (this is not a prefix; it's an object)
  • object/object

and then call ListObjects with {prefix=object/, recursive=true, limit=1} (or if object/ is the last element on the list page), it's impossible to go to the next page. libuplink expects Cursor to be stripped out of a prefix, so if you have object/ as a prefix and it's also the last object on the page, you are going to call ListObjects with Cursor="", which effectively puts you in an infinite loop.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

Status

Backlog

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions