couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Malte S. Stretz (JIRA)" <>
Subject [jira] Created: (COUCHDB-1025) Misleading error "Referer header required." when POSTing without a body
Date Wed, 12 Jan 2011 12:49:45 GMT
Misleading error "Referer header required." when POSTing without a body

                 Key: COUCHDB-1025
             Project: CouchDB
          Issue Type: Bug
          Components: HTTP Interface
    Affects Versions: 1.0.1
         Environment: Ubuntu 10.10, Perl modules involved: LWP 5.836, JSON::Any 1.22, JSON
2.21, JSON::XS 2.29
            Reporter: Malte S. Stretz
            Priority: Minor

This one gave me headaches.  I use the simple Perl library from <>
in combination with JSON::Any to push ~63000 documents to a database.  Since I later want
to sync this data with outside changes, I calculated a hash of each document and generated
a document /hashes which maps the hashes to document names (I know, not the best solution,
but this should have been only a quick hack and I wanted to keep the hashes out of the actual
documents).  After I split the bulk pushing into batches of 1024 to get around timeouts in
LWP, uploading the data itself works fine.  But the /hashes document always fails with {"error":"bad_request","reason":"Referer
header required."}.

After a lot of prodding in the wrong corners, Wireshark came to the rescue. The data sent
and received is quoted below; there appears to be some problem/bug/config issue in LWP with
POSTing large documents:  The Content-Length is set but no body is sent. This is not good.
But the error message coming back from CouchDB is almost worse :)

POST /certif/hashes HTTP/1.1
TE: deflate,gzip;q=0.3
Connection: TE, close
Host: localhost:5984
User-Agent: libwww-perl/5.836
Content-Type: application/json
Content-Length: 4478093

HTTP/1.1 400 Bad Request
Server: CouchDB/1.0.1 (Erlang OTP/R13B)
Date: Tue, 11 Jan 2011 16:47:57 GMT
Content-Type: text/plain;charset=utf-8
Content-Length: 60
Cache-Control: must-revalidate

{"error":"bad_request","reason":"Referer header required."}

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

View raw message