1.0.1 sends malformed reply to some POST and GETs
-------------------------------------------------
Key: COUCHDB-1062
URL: https://issues.apache.org/jira/browse/COUCHDB-1062
Project: CouchDB
Issue Type: Bug
Components: HTTP Interface
Affects Versions: 1.0.1
Environment: Ubuntu 10.10
Reporter: Ian Hobson
Priority: Minor
The HTTP reply body should end with CRLF when chunked format is used, according
to http://www.jmarshall.com/easy/http/#http1.1c2
Some replies I am getting from couchDB actually end with a single LF when sent
in chunked format.
This is from some logging software I placed in the network between couchDB and
the user code. \r is replaced with CR and \n with LF.
sent: PUT /cubic/c182c1a2f71c3547ccee455563008ac6 HTTP/1.1CRLFHost:
localhost:5981CRLFContent-Length: 247CRLFContent-Type:
application/jsonCRLFAccept: applica
tion/jsonCRLFUser-Agent: CouchDB-Python/0.8CRLFCRLF
sent: {"town": "FFFFFXXyyzz", "name": "zzzzzxx", "country": "UK", "_rev":
"11-d4412c9350af6bf0a16f53ae5d7611a2", "street": "dddd", "postCode": "W3 4HU",
"lega
lName": "zzyy", "_id": "c182c1a2f71c3547ccee455563008ac6", "type": "Company",
"cubRef": "3212"}
recv: HTTP/1.1 201 CreatedCRLFServer: CouchDB/1.0.1 (Erlang
OTP/R13B)CRLFLocation:
http://localhost:5981/cubic/c182c1a2f71c3547ccee455563008ac6CRLFEtag: "12-c
4a6825c8ba99bef469aa7ea3add4600"CRLFDate: Tue, 08 Feb 2011 22:37:29
GMTCRLFContent-Type: application/jsonCRLFContent-Length: 96CRLFCache-Control:
must-revalid
ateCRLFCRLF
recv:
{"ok":true,"id":"c182c1a2f71c3547ccee455563008ac6","rev":"12-c4a6825c8ba99bef469aa7ea3add4600"}LF
sent: GET /cubic/_design/Company/_view/by_name HTTP/1.1CRLFHost:
localhost:5981CRLFContent-Length: 0CRLFAccept: application/jsonCRLFUser-Agent:
CouchDB-Python
/0.8CRLFCRLF
recv: HTTP/1.1 200 OKCRLFTransfer-Encoding: chunkedCRLFServer: CouchDB/1.0.1
(Erlang OTP/R13B)CRLFEtag: "9754IR9J5ESL770XGNGUKJ5K2"CRLFDate: Tue, 08 Feb 2011
22:37:30 GMTCRLFContent-Type: application/jsonCRLFCache-Control:
must-revalidateCRLFCRLF
recv:
a0CRLF{"total_rows":9,"offset":0,"rows":[CRLF{"id":"c182c1a2f71c3547ccee45556300770e","key":["A
first Company","231","345 East of Eden","Manchester",nul
l],"value":null}CRLF77CRLF,CRLF{"id":"c182c1a2f71c3547ccee455563001254","key":["C-U-B","1","9-11
March Business Centre","March",null],"value":null}CRLF75CRLF,
CRLF{"id":"c182c1a2f71c3547ccee455563003139","key":["Fred Bloggs","302","30
Back
Lane","Somewhere",null],"value":null}CRLF76CRLF,CRLF{"id":"c182c1a2f71c3547cc
ee455563003de8","key":["Fred Smith","431","30 High
street","Somewhere",null],"value":null}CRLF83CRLF,CRLF{"id":"7bc7f2014593d108b5b681fe03002ad6","key":["Joe
Hobson","1002","31 xxxxxxxxxx Dr","Northampton,
Nhants",null],"value":null}CRLF7cCRLF,CRLF{"id":"c182c1a2f71c3547ccee455563002e87","key":["Kingfisher
Group","
323","33 Westmister
Rd","Londonx",null],"value":null}CRLF7aCRLF,CRLF{"id":"c182c1a2f71c3547ccee455563005894","key":["New
Company","212","34 Back Street","Anot
her
Toon",null],"value":null}CRLF76CRLF,CRLF{"id":"c182c1a2f71c3547ccee4555630070dc","key":["Silly
Samuel","3223","Street Name","New Towen",null],"value":null
}CRLF6cCRLF,CRLF{"id":"c182c1a2f71c3547ccee455563008ac6","key":["zzzzzxx","3212","dddd","FFFFFXXyyzz",null],"value":null}CRLF4CRLFCRLF]}CRLF1CRLFLFCRLF0CRLFCR
LF
sent: PUT /c etc...
The above line ending LF should be followed by a CRLF pair. It isn't. A moment
later there is the HTTP/1/1 etc from the next reply.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira