iodeal opened a new issue, #327:
URL: https://github.com/apache/arrow-rs-object-store/issues/327
**Describe the bug**
I have found some inconsistencies in the path and list:
For path conversion, the tailing '/' will be stripped, which is problematic
in some distributed file systems. As in S3, it is sensitive to the tailing `/`,
so it is necessary to keep the tailing `/`.
It is precisely because the path of the distributed file system has a
significant impact on the tail of the `/`, whether or not to add the tail of
the `/` in the "list", especially in "list_with_delimiter". When the project is
currently in the list, `/` will be directly added to the tail of the path,
which leads to some problems, such as
When querying objects with the prefix "path/child" in S3, the expected
result is objects such as child1, child2, etc. However, if we follow the
previous logic and query objects with the prefix "path/child/", the result will
be empty.
**To Reproduce**
upload path/child1,path/child2 to s3
`
store.list(Some("path/child"));
`
**Expected behavior**
Regarding the handling of Path:
Modify Path: Parse, From<&str>and From<String>related code, keeping the last
`/` at the end
Processing of List
Modify the tail addition logic of the prefix in list_paginated. If the
delimiter is true and the tail does not contain `/`, add `/` to the tail.
Otherwise, leave it as it is.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]