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

Inconsistency of API implementation and documentation [JIRA: RCS-377] #1324

Open
manifest opened this issue Nov 4, 2016 · 0 comments
Open

Comments

@manifest
Copy link

manifest commented Nov 4, 2016

During developing Riak S2 client library, I've found inconsistency of current API implementation and documentation (v2.1.1).

  • GET Bucket success response has wrong order of elements in its body. According to Amazon S3 schema definition, Owner follows StorageClass element in the ListEntry type (example from Riak S2 documentation has different order).

http://docs.basho.com/riak/cs/2.1.1/references/apis/storage/s3/get-bucket
http://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGET.html

<?xml version="1.0" encoding="UTF-8"?>
<ListBucketResult
	xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
	<Name>test-bucket</Name>
	<Prefix></Prefix>
	<Marker></Marker>
	<MaxKeys>1000</MaxKeys>
	<Delimiter></Delimiter>
	<IsTruncated>false</IsTruncated>
	<Contents>
		<Key>test_file2</Key>
		<LastModified>2016-10-27T08:55:33.000Z</LastModified>
		<ETag>"202cb962ac59075b964b07152d234b70"</ETag>
		<Size>3</Size>
		<StorageClass>STANDARD</StorageClass>
		<Owner>
			<ID>57e664fa18b1251e63f5f0ef0720d3e251ed56f1f2c2a0209c087f060587df45</ID>
			<DisplayName>admin</DisplayName>
		</Owner>
	</Contents>
</ListBucketResult>
<xsd:complexType name="ListEntry">
  <xsd:sequence>
    <xsd:element name="Key" type="xsd:string"/>
    <xsd:element name="LastModified" type="xsd:dateTime"/>
    <xsd:element name="ETag" type="xsd:string"/>
    <xsd:element name="Size" type="xsd:long"/>
    <xsd:element name="StorageClass" type="tns:StorageClass"/>
    <xsd:element name="Owner" type="tns:CanonicalUser" minOccurs="0"/>
  </xsd:sequence>
</xsd:complexType>
  • GET Bucket query string parameters should be written in lower case and with dashes as words separators, according to Amazon S3 documentation, and it currently works this way. Looks like misspelling in Riak S2 documentation which describes them in camel case: Delimiter, Marker, `MaxKeys

  • PUT Bucket Policy request should return 204 No Content status code on success (now it's 200 OK, No body).

http://docs.basho.com/riak/cs/2.1.1/references/apis/storage/s3/put-bucket-policy
http://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTpolicy.html

  • DELETE Bucket Policy request should return 204 No Content status code on success (now it's 200 OK, No body)

http://docs.basho.com/riak/cs/2.1.1/references/apis/storage/s3/delete-bucket-policy
http://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketDELETEpolicy.html

  • List Multipart Uploads response types ListMultipartUploadsResult.Upload.Key and ListMultipartUploadsResult.Upload.UploadId are actually strings (Riak S2 and Amazon S3 documentations descibe these parameters as integers).

http://docs.basho.com/riak/cs/2.1.1/references/apis/storage/s3/list-multipart-uploads
http://docs.aws.amazon.com/AmazonS3/latest/API/mpUploadListMPUpload.html

@Basho-JIRA Basho-JIRA changed the title Inconsistency of API implementation and documentation Inconsistency of API implementation and documentation [JIRA: RCS-377] Nov 4, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants