couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Joan Touzet (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (COUCHDB-317) Badmatch error if _replicate target starts with slash
Date Sat, 26 Jan 2013 17:09:12 GMT

    [ https://issues.apache.org/jira/browse/COUCHDB-317?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13563547#comment-13563547
] 

Joan Touzet commented on COUCHDB-317:
-------------------------------------

I disagree, that changes semantics. Don't try and read the user's mind...I understand trying
to be friendly, but that means absolutely everywhere where a DbName is not found, we could
try and number of arbitrary transformations (What about more than one leading slash? Or an
escaped leading slash?) to eventually get to something reasonable. 

But if we accept it, then it's possible the user thinks that ///foobar is a valid DbName and
uses it in a bunch of other places, potentially in application logic as well. That allows
inaccuracy and problems to bleed through to lots of other areas.


                
> Badmatch error if _replicate target starts with slash
> -----------------------------------------------------
>
>                 Key: COUCHDB-317
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-317
>             Project: CouchDB
>          Issue Type: Bug
>          Components: Replication
>    Affects Versions: 0.9.1
>         Environment: svn r761188
>            Reporter: Brian Candler
>            Assignee: Joan Touzet
>            Priority: Trivial
>             Fix For: 1.3
>
>         Attachments: replicate-slash-fix.patch, replicate-slash-fix-v2.patch
>
>
> Giving a replication source or target which starts with a slash gives an Erlang barf
error. (The wiki at http://wiki.apache.org/couchdb/Replication said that this slash was necessary.
I will fix the wiki, but the error is still unsightly)
> $ curl -X POST -d '{"source":"/foo","target":"/bar"}' http://127.0.0.1:5984/_replicate
> {"error":"case_clause","reason":"{error,{{{badmatch,{error,illegal_database_name}},\n
        [{couch_rep,init,1},\n          {gen_server,init_it,6},\n          {proc_lib,init_p,5}]},\n
       {child,undefined,\"7898c2bfbbcf8adbb305371e6c3c949e\",\n               {gen_server,start_link,\n
                          [couch_rep,\n                            [\"7898c2bfbbcf8adbb305371e6c3c949e\",\n
                            {local,<<\"/foo\">>,{user_ctx,null,[<<\"_admin\">>]}},\n
                            {local,<<\"/bar\">>,\n                           
        {user_ctx,null,[<<\"_admin\">>]}}],\n                            []]},\n
              transient,1,worker,\n               [couch_rep]}}}"}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message