hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nanda kumar (Jira)" <j...@apache.org>
Subject [jira] [Updated] (HDDS-1948) S3 MPU can't be created with octet-stream content-type
Date Fri, 23 Aug 2019 15:51:00 GMT

     [ https://issues.apache.org/jira/browse/HDDS-1948?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel

Nanda kumar updated HDDS-1948:
    Fix Version/s: 0.4.1

> S3 MPU can't be created with octet-stream content-type 
> -------------------------------------------------------
>                 Key: HDDS-1948
>                 URL: https://issues.apache.org/jira/browse/HDDS-1948
>             Project: Hadoop Distributed Data Store
>          Issue Type: Bug
>          Components: S3
>            Reporter: Elek, Marton
>            Assignee: Elek, Marton
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 0.4.1, 0.5.0
>          Time Spent: 2h 40m
>  Remaining Estimate: 0h
> This problem is reported offline by [~shanekumpf@gmail.com].
> When aws-sdk-go is used to access to s3 gateway of Ozone it sends the Multi Part Upload
initialize message with "application/octet-stream" Content-Type. 
> This Content-Type is missing from the aws-cli which is used to reimplement s3 endpoint.
> The problem is that we use the same rest endpoint for initialize and complete Multipart
Upload request. For the completion we need the CompleteMultipartUploadRequest parameter which
is parsed from the body.
> For initialize we have an empty body which can't be serialized to CompleteMultipartUploadRequest.
> The workaround is to set a specific content type from a filter which help up to create
two different REST method for initialize and completion message.
> Here is an example to test (using bogus AWS credentials).
> {code}
> curl -H 'Host:yourhost' -H 'User-Agent:aws-sdk-go/1.15.11 (go1.11.2; linux; amd64)' -H
'Content-Length:0' -H 'Authorization:AWS4-HMAC-SHA256 Credential=qwe/20190809/ozone/s3/aws4_request,
Signature=7726ed63990ba3f4f1f796d4ab263f5d9c3374528840f5e49d106dbef491f22c' -H 'Content-Type:application/octet-stream'
-H 'X-Amz-Acl:private' -H 'X-Amz-Content-Sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'
-H 'X-Amz-Date:20190809T070142Z' -H 'X-Amz-Storage-Class:STANDARD' -H 'Accept-Encoding:gzip'
-X POST 'http://localhost:9999/docker/docker/registry/v2/repositories/apache/ozone-runner/_uploads/2173f019-09c3-466b-bb7d-c31ce749d826/data?uploads
> {code}
> Without the patch it returns with HTTP 405 (Not supported Media Type).

This message was sent by Atlassian Jira

To unsubscribe, e-mail: hdfs-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-help@hadoop.apache.org

View raw message