[
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