Return-Path: Delivered-To: apmail-couchdb-dev-archive@www.apache.org Received: (qmail 12838 invoked from network); 12 Aug 2009 21:36:32 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 12 Aug 2009 21:36:32 -0000 Received: (qmail 56823 invoked by uid 500); 12 Aug 2009 21:36:39 -0000 Delivered-To: apmail-couchdb-dev-archive@couchdb.apache.org Received: (qmail 56757 invoked by uid 500); 12 Aug 2009 21:36:39 -0000 Mailing-List: contact dev-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@couchdb.apache.org Delivered-To: mailing list dev@couchdb.apache.org Received: (qmail 56747 invoked by uid 99); 12 Aug 2009 21:36:39 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 12 Aug 2009 21:36:39 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 12 Aug 2009 21:36:36 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id CB072234C004 for ; Wed, 12 Aug 2009 14:36:14 -0700 (PDT) Message-ID: <295149887.1250112974817.JavaMail.jira@brutus> Date: Wed, 12 Aug 2009 14:36:14 -0700 (PDT) From: "Robert Newson (JIRA)" To: dev@couchdb.apache.org Subject: [jira] Updated: (COUCHDB-433) CouchDB doesn't handle Expect header. In-Reply-To: <1433636106.1248389655430.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/COUCHDB-433?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Robert Newson updated COUCHDB-433: ---------------------------------- Attachment: 0001-fix-e-c-handling.patch Mochiweb expects the Expect headers value to be "100-continue" and hangs if it gets, for example, "100-Continue" which is what Apache HttpClient sends. the patch lower-cases the value of the Expect header before matching to "100-continue" thus allowing HttpClient to work against couchdb without the 2 second delay while it waits for an "HTTP 1.1 100 continue" response that will never come. > CouchDB doesn't handle Expect header. > ------------------------------------- > > Key: COUCHDB-433 > URL: https://issues.apache.org/jira/browse/COUCHDB-433 > Project: CouchDB > Issue Type: Bug > Affects Versions: 0.10 > Reporter: Robert Newson > Attachments: 0001-fix-e-c-handling.patch > > > An HTTP client may elect to send an "Expect: 100-Continue" header. All compliant HTTP servers are required to; > "A server that does not understand or is unable to comply with any of the expectation values in the Expect field of a request MUST respond with appropriate error status. The server MUST respond with a 417 (Expectation Failed) status if any of the expectations cannot be met or, if there are other problems with the request, some other 4xx status." > from http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html > CouchDB sends neither the Continue response (if it supports expect-continue) or 417 (if it doesn't). > This leads clients that include the header to hang while they timeout expecting either response. > Suggest returning a 417 response so that compliant clients will retry immediately without the Expect header. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.