Pull replication confuses mochiweb keep-alive
---------------------------------------------
Key: COUCHDB-730
URL: https://issues.apache.org/jira/browse/COUCHDB-730
Project: CouchDB
Issue Type: Bug
Components: Replication
Affects Versions: 0.11, 0.10.1
Reporter: Randall Leeds
Attachments: replication-keepalive.patch
MochiWeb closes a request connection if the headers indicate the presence of a
body with non-zero length but the body is never read by the application. Couch
sends a body with the atom "true" in a POST to _ensure_full_commit before
saving replication checkpoints, but a remote Couch will not read this body. As
a result, MochiWeb closes the request and all pipelined requests for this host
must be retried by couch_rep_httpc / ibrowse.
I don't know if the body = true was a holdover from a quirk with an older
MochiWeb, lhttpc (didn't couch used to use this?) or something else, but simply
removing it does the trick.
Patch attached.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira