Elek, Marton created HDDS-742: --------------------------------- Summary: Handle object list requests (GET bucket) without prefix parameter Key: HDDS-742 URL: https://issues.apache.org/jira/browse/HDDS-742 Project: Hadoop Distributed Data Store Issue Type: Sub-task Components: S3 Reporter: Elek, Marton Assignee: Elek, Marton
In s3 gateway the GET bucket endpoint is already implemented. It can return with the available objects based on a given prefix. ([https://docs.aws.amazon.com/AmazonS3/latest/API/v2-RESTBucketGET.html)] As it's defined the Delimiter parameter is used to reduce the response with returning only the first-level keys and prefixes (aka directories) {code:java} <ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> <Name>example-bucket</Name> <Prefix></Prefix> <KeyCount>2</KeyCount> <MaxKeys>1000</MaxKeys> <Delimiter>/</Delimiter> <IsTruncated>false</IsTruncated> <Contents> <Key>sample.jpg</Key> <LastModified>2011-02-26T01:56:20.000Z</LastModified> <ETag>"bf1d737a4d46a19f3bced6905cc8b902"</ETag> <Size>142863</Size> <StorageClass>STANDARD</StorageClass> </Contents> <CommonPrefixes> <Prefix>photos/</Prefix> </CommonPrefixes> </ListBucketResult>{code} Here we can have multiple additional objects with photos/ prefix but they are not added to the response. The main problem in the ozone s3 implementation is that the Delimiter parameter *should be optional.* In case of the delimiter is missing we always return with all the keys without and common prefix simplification. It requires for recursive directory listing which is used by s3a adapter. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-dev-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-dev-h...@hadoop.apache.org