For PUT object requests, Minio response header includes "Etag", instead of "ETag". Apparently this compatibility mismatch breaks AWS SDK 1.7.1 and PUT object requests fails. However, it seem to work with AWS Java SDK 1.10.x.
4.2 Message Headers
HTTP header fields, which include general-header (section 4.5),
request-header (section 5.3), response-header (section 6.2), and
entity-header (section 7.1) fields, follow the same generic format as
that given in Section 3.1 of RFC 822 [9]. Each header field consists
of a name followed by a colon (":") and the field value. Field names
are case-insensitive. The field value MAY be preceded by any amount
of LWS, though a single SP is preferred. Header fields can be
extended over multiple lines by preceding each extra line with at
least one SP or HT. Applications ought to follow "common form", where
one is known or indicated, when generating HTTP constructs, since
there might exist some implementations that fail to accept anything
AWS Java SDK is buggy which needs to fix this bug.
For PUT object requests, Minio response header includes "Etag", instead of "ETag". Apparently this compatibility mismatch breaks AWS SDK 1.7.1 and PUT object requests fails. However, it seem to work with AWS Java SDK 1.10.x.
Expected Behavior
AWS responses for PUT object:
Also, according to the AWS Documentation it's "ETag",
http://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPUT.html
Current Behavior
Minio returns:
Possible Solution
Replace
Etag
toETag
in response header.Steps to Reproduce (for bugs)
Any PUT object requests with AWS Java SDK 1.7.1 should reproduce this issue.
Context
Found this issue while using Minio with another system that uses AWS Java SDK 1.7.1.
Environment
The text was updated successfully, but these errors were encountered: