Invalid character in request causes double HTTP response -- 200 and 500
-----------------------------------------------------------------------

                 Key: COUCHDB-48
                 URL: https://issues.apache.org/jira/browse/COUCHDB-48
             Project: CouchDB
          Issue Type: Bug
          Components: HTTP Interface
         Environment: Debian (/etc/debian_version says lenny/sid, can never 
keep their versioning straight). Running CouchDB built from today's source. 
Accessing via ClouchDB.
            Reporter: Eli Naeher


I inadvertently created a document with an ID which contains the sequence 
"%da", which when URL-decoded is apparently not a valid UTF-8 character. 
Instead of receiving the appropriate error, I got an HTTP 200 followed by an 
HTTP 500, both in response to the same request.

Additionally, the document seems to have been created, since accessing certain 
pages of the list of documents in the built-in web interface causes the same 
500 error to show up in the CouchDB logs.

Here is a Wireshark capture which explains the issue:

GET /mnemosyne/id-containing-the-sequence-%da HTTP/1.1

Host: localhost:5984

User-Agent: Drakma/0.11.5 (SBCL 1.0.12; Linux; 2.6.22-2-686; 
http://weitz.de/drakma/)

Accept: */*

Connection: close



HTTP/1.1 200 OK

Transfer-Encoding: chunked

Server: MochiWeb/1.0 (Any of you quaids got a smint?)

Etag: "2795559181"

Date: Tue, 29 Apr 2008 03:09:58 GMT

Content-Type: text/plain;charset=utf-8



HTTP/1.1 500 Internal Server Error

Transfer-Encoding: chunked

Server: MochiWeb/1.0 (Any of you quaids got a smint?)

Date: Tue, 29 Apr 2008 03:09:58 GMT

Content-Type: text/plain;charset=utf-8



3b

{"error":"EXIT","reason":"{ucs,{bad_utf8_character_code}}"}

0





-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to