couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nick North (JIRA)" <j...@apache.org>
Subject [jira] [Closed] (COUCHDB-1403) Multipart upload fails with exception if request body is chunked
Date Fri, 14 Mar 2014 19:40:44 GMT

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

Nick North closed COUCHDB-1403.
-------------------------------

    Resolution: Duplicate

Included in issue 1956

> Multipart upload fails with exception if request body is chunked
> ----------------------------------------------------------------
>
>                 Key: COUCHDB-1403
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-1403
>             Project: CouchDB
>          Issue Type: Bug
>          Components: HTTP Interface
>    Affects Versions: 1.1.1
>         Environment: Mac OS X 10.7.3, Couchbase Single Server 2.0.0dev4 (based on CouchDB
1.1.1)
>            Reporter: Jens Alfke
>            Priority: Minor
>
> CouchDB doesn't correctly parse MIME multipart PUT/POST requests when the HTTP transfer
is chunked. It generates an Erlang exception, and the client sees that the socket was closed
unexpectedly.
> [error] [emulator] Error in process <0.15079.3> with exit value: {badarith,[{couch_httpd_db,'-receive_request_data/2-fun-0-',3},{couch_httpd,read_until,3},{couch_httpd,parse_part_body,1},{couch_httpd,parse_multipart_request,3},{couch_doc,'-doc_from_multi_part_stream/2-fun-1-'...

> The source looks like:
> receive_request_data(Req) ->
>  receive_request_data(Req, couch_httpd:body_length(Req)).
> receive_request_data(Req, LenLeft) when LenLeft > 0 ->
> Robert Newson commented on the user@ list: "Pretty obvious bug, yes. We're attempting
to evaluate whether the atom 'chunked' is greater than zero."
> The obvious workaround -- don't use chunked -- may not be available to clients. This
level of encoding is generally performed by the browser or client HTTP library, and the app
level code may not have control over whether it's performed.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message