I did end up switching to civetweb and I also found that rgw content length
compat, which I set to true. I am still getting the 411 Length required
issue.

I have had more discussions with our testing team, and I am still trying to
ascertain how valid this issue is.

With AWS Sig v4, you use a different method to do chunked transfers. With
the sigv2, you do it as a "Transfer-Encoding: chunked" (as detailed in my
s3curl example).  However, that v2 method may only apply to the
implementation we have have (we have a proprietary implementation of s3
that I am hoping to replace with Ceph, if I can match our acceptance
testing).

The reason I think that this is a valid issue is because of this commit

http://tracker.ceph.com/projects/ceph/repository/revisions/14fa77d9277b5ef5d0c6683504b368773b39ccc4

Fixes: #2878
> <http://tracker.ceph.com/issues/2878>We now allow complete multipart
> upload to use chunked encoding
> when sending request data. With chunked encoding the HTTP_LENGTH
> header is not required.


What I would like to see is the test code for this (ideally in a curl or
s3curl format) so that I can compare locally to see if we're saying the
same thing, or if that commit from 3 years ago is still valid.

-John


On Wed, Jan 27, 2016 at 5:49 PM, Krzysztof Księżyk <[email protected]>
wrote:

> On Mon, 2016-01-25 at 16:06 -0500, John Hogenmiller wrote:
>
> Greetings,
>
>
> When I submit a request with "Transfer-Encoding: chunked", I get a 411
> Length required error back. It's very similar to
> http://tracker.ceph.com/issues/3297 except I am running the ceph version
> of fastcgi. Ceph does not appear to produce apache2 2.4 versions, I am
> running upstream Apache from Ubuntu on 14.04 LTS.
>
>
>
> My apache and ceph.conf files are at:
> https://gist.github.com/ytjohn/da854151d8d360b927d0
>
>
>
> Versions:
>
>  * Ceph 9.2.0.1trusty
>
>  * apache2: 2.4.7-1ubuntu4.8
>
>  * libapache2-mod-fastcgi:  2.4.7~0910052141-ceph1
>
>
>
> Example session:
>
>
>
> ~ s3curl.pl --id iphone_lab --put=1mb.img --debug --  --header
> "Transfer-Encoding: chunked" http://172.29.4.148/chunkedbucket2ip/imb.img
>
>
>
> s3curl: exec curl -v -H 'Date: Mon, 25 Jan 2016 19:34:06 +0000' -H
> 'Authorization: AWS iphone_lab:i/l3AJ0C5pc/nSUUcwn7943ag10=' -L -H
> 'content-type: ' -T 1mb.img --header 'Transfer-Encoding: chunked'
> http://172.29.4.148/chunkedbucket2ip/imb.img
>
> *   Trying 172.29.4.148...
>
> * Connected to 172.29.4.148 (172.29.4.148) port 80 (#0)
>
> > PUT /chunkedbucket2ip/imb.img HTTP/1.1
>
> > Host: 172.29.4.148
>
> > User-Agent: curl/7.43.0
>
> > Accept: */*
>
> > Date: Mon, 25 Jan 2016 19:34:06 +0000
>
> > Authorization: AWS iphone_lab:i/l3AJ0C5pc/nSUUcwn7943ag10=
>
> > Transfer-Encoding: chunked
>
> > Expect: 100-continue
>
> >
>
> < HTTP/1.1 100 Continue
>
> < HTTP/1.1 411 Length Required
>
> < Date: Mon, 25 Jan 2016 19:34:06 GMT
>
> < Server: Apache/2.4.7 (Ubuntu)
>
> < x-amz-request-id: tx00000000000000001fda9-0056a678ae-10da-default
>
> < Accept-Ranges: bytes
>
> < Content-Length: 156
>
> < Connection: close
>
> < Content-Type: application/xml
>
> <
>
> * Closing connection 0
>
> <?xml version="1.0"
> encoding="UTF-8"?><Error><Code>MissingContentLength</Code><RequestId>tx00000000000000001fda9-0056a678ae-10da-default</RequestId></Error>
>
>
>
>
> _______________________________________________
> ceph-users mailing 
> [email protected]http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
>
> In addition to my previous message - I was just reading messages on this
> mailing list and found in one post that
> setting "rgw content length compat" to true, should solve this issue.
>
> Kind regards -
> Krzysztof Księżyk
>
> _______________________________________________
> ceph-users mailing list
> [email protected]
> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
>
>
_______________________________________________
ceph-users mailing list
[email protected]
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com

Reply via email to