From dev-return-11655-apmail-couchdb-dev-archive=couchdb.apache.org@couchdb.apache.org Wed Sep 08 15:06:01 2010 Return-Path: Delivered-To: apmail-couchdb-dev-archive@www.apache.org Received: (qmail 26649 invoked from network); 8 Sep 2010 15:06:01 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 8 Sep 2010 15:06:01 -0000 Received: (qmail 28313 invoked by uid 500); 8 Sep 2010 15:06:01 -0000 Delivered-To: apmail-couchdb-dev-archive@couchdb.apache.org Received: (qmail 27921 invoked by uid 500); 8 Sep 2010 15:05:58 -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 27910 invoked by uid 99); 8 Sep 2010 15:05:57 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 08 Sep 2010 15:05:57 +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.22] (HELO thor.apache.org) (140.211.11.22) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 08 Sep 2010 15:05:56 +0000 Received: from thor (localhost [127.0.0.1]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o88F5abR004701 for ; Wed, 8 Sep 2010 15:05:36 GMT Message-ID: <31439487.76751283958336194.JavaMail.jira@thor> Date: Wed, 8 Sep 2010 11:05:36 -0400 (EDT) From: "Jason Smith (JIRA)" To: dev@couchdb.apache.org Subject: [jira] Commented: (COUCHDB-882) Nonstandard HTTP methods not converted to JSON correctly In-Reply-To: <22144580.69141283916633721.JavaMail.jira@thor> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/COUCHDB-882?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12907238#action_12907238 ] Jason Smith commented on COUCHDB-882: ------------------------------------- I did not know why an atom was chosen instead of binary in the first place, so I kept the original functionality, only changing for the newer situation. For one thing, the log message may require changing since right now it says 'GET', 'PUT', etc. so I think that is ~p in the format. It will look pretty bad as <<"GET">>, etc. in the logs. I will try to use 100% atoms and submit another patch (during/after couchcamp). > Nonstandard HTTP methods not converted to JSON correctly > -------------------------------------------------------- > > Key: COUCHDB-882 > URL: https://issues.apache.org/jira/browse/COUCHDB-882 > Project: CouchDB > Issue Type: Bug > Components: HTTP Interface > Affects Versions: 1.0.1 > Environment: Erlang R13, Linux > Reporter: Jason Smith > Priority: Minor > Fix For: 1.0.1 > > Attachments: 0001-For-unknown-HTTP-methods-Use-a-binary-for-httpd.meth.patch > > > Since COUCHDB-815, CouchDB allows nonstandard or unknown HTTP methods in case a _show or similar function may want to implement a response to that method. > Unfortunately the (my) patch in that ticket used couch_util:to_existing_atom which returns the passed value unmodified if it has no corresponding atom. That is wrong because the HTTP method will be copied into the `req` object in the view server, therefore it must not be an Erlang string (list of integers) because those do not JSONify correctly. Instead, if the atom does not exist, the method should be converted to a binary. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.