Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use mem.Available including buffers and cache #58

Merged
merged 1 commit into from
Feb 21, 2016
Merged

Conversation

lrowe
Copy link
Contributor

@lrowe lrowe commented Feb 20, 2016

See #57.

kahing added a commit that referenced this pull request Feb 21, 2016
Use mem.Available including buffers and cache
@kahing kahing merged commit b7fb021 into kahing:master Feb 21, 2016
kahing pushed a commit that referenced this pull request Nov 11, 2019
… objects (#58)

Problem: In s3 & azblob, prefixes are returned with '/' => the prefix "2019" is returned as "2019/". So the list api for these backends returns "2019/" after "2019-0001/" because ascii("/") > ascii("-"). This is problematic for goofys if "2019/" is returned in x+1'th batch and "2019-0001/" is returned in x'th; Goofys stores the results as they arrive in a sorted array and expects backends to return entries in a sorted order.
We cant just use ordering of s3/azblob because different cloud providers have different sorting strategies when it involes directories. In s3 "a/" > "a-b/". In adlv2 it is opposite.

Solution: To deal with this our solution with s3 & azblob is as follows. (nothing needed for others). For a single call of ListBlobs, we keep requesting multiple list batches until there is nothing left to list or the last listed entry has all characters > "/"
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.

2 participants