couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jason Smith (JIRA)" <j...@apache.org>
Subject [jira] Commented: (COUCHDB-882) Nonstandard HTTP methods not converted to JSON correctly
Date Wed, 08 Sep 2010 15:05:36 GMT

    [ 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.


Mime
View raw message