Details
-
Sub-task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
1.3.0
Description
Option --delimiter '/' in ListObjectsV2 Is a commonly used option. Common scenarios are as follows:
- simple aws s3 cmd like aws s3 --endpoint http://<ip>:9878 ls buk/dir/
- aws s3api cmd like aws s3api --endpoint http://<ip>:9878 list-objects-v2 --bucket buk1-ln --prefix '' --delimiter '/'
- fuse mount s3 bucket and ls cmd
Only listing immediate children node of prefix is needed in the above scenario.
In the current implementation of FSO bucket, the object is listed by Depth-First-Search algorithm, and then filtered by delimiter, which greatly reduces the performance.
It was reduced from tens of seconds to 3 seconds in my test environment after optimization.
Attachments
Issue Links
- links to