couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nathan Vander Wilt (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (COUCHDB-1146) Content-Length ignored on GET requests
Date Thu, 28 Apr 2011 21:58:04 GMT

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

Nathan Vander Wilt updated COUCHDB-1146:
----------------------------------------

    Description: 
In the case of a GET request, CouchDB does not wait for the client to send any content promised
by a Content-Length header but sends its response as soon as the last header is received.
This can confuse some HTTP client libraries (such as node.js) that do not expect to receive
a response before they have finished the request.

To reproduce:
$ telnet localhost 5984
GET / HTTP/1.1
Content-Length: 3

...


Expected results:
No response from CouchDB until last "." is typed

Actual results:
CouchDB sends response and closes the client's connection as soon as request headers are done.

>From IRC conversation (and RFC 2616) this doesn't seem to be out-of-spec per se, but is
a bit "rude" and therefore can break fragile clients (eg https://github.com/joyent/node/issues/989).

  was:
In the case of a GET request, CouchDB does not wait for the client to send any content promised
by a Content-Length header but sends its response as soon as the last header is received.
This can confuse some HTTP client libraries (such as node.js) that do not expect to receive
a response before they have finished the request.

To reproduce:
$ telnet localhost 5984
GET / HTTP/1.1
Content-Length: 3

...


Expected results:
No response from CouchDB until last "." is typed

Actual results:
CouchDB sends response and closes the client's connection as soon as request headers are done.

>From IRC conversation (and RFC 2616) this doesn't seem to be out-of-spec per se, but is
a bit "rude" and therefore can break fragile clients.


> Content-Length ignored on GET requests
> --------------------------------------
>
>                 Key: COUCHDB-1146
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-1146
>             Project: CouchDB
>          Issue Type: Bug
>          Components: HTTP Interface
>            Reporter: Nathan Vander Wilt
>
> In the case of a GET request, CouchDB does not wait for the client to send any content
promised by a Content-Length header but sends its response as soon as the last header is received.
This can confuse some HTTP client libraries (such as node.js) that do not expect to receive
a response before they have finished the request.
> To reproduce:
> $ telnet localhost 5984
> GET / HTTP/1.1
> Content-Length: 3
> ...
> Expected results:
> No response from CouchDB until last "." is typed
> Actual results:
> CouchDB sends response and closes the client's connection as soon as request headers
are done.
> From IRC conversation (and RFC 2616) this doesn't seem to be out-of-spec per se, but
is a bit "rude" and therefore can break fragile clients (eg https://github.com/joyent/node/issues/989).

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message