couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Christopher Bonhage (JIRA)" <>
Subject [jira] [Commented] (COUCHDB-1229) _update handler doesn't support slashes in doc _id
Date Fri, 19 Aug 2011 19:22:27 GMT


Christopher Bonhage commented on COUCHDB-1229:

I disagree with this being a "Won't Fix". I am of the opinion that the _show handler has correct
behavior here (and by extension, that the _update handler's swallowing of slashes in docids
is incorrect behavior). The patch supplied above just duplicates the docid extraction routine
from handle_doc_show_req/3 to handle_doc_update_req/3. 

My couchapps use slashes in docids to namespace documents, allowing me to use rewrite rules
to force _show, _update, and _list handlers to only handle documents in a specified namespace.
If slashes are not allowed in docids, this would not be possible (and would be a massive showstopper
for me).

That being said, I do encounter some woes when it comes to trying to get attachments out of
namespaced documents with rewrite rules (there's no way around escaping the %2F there), but
that has nothing to do with the behavior of _show and _update handlers.

> _update handler doesn't support slashes in doc _id
> --------------------------------------------------
>                 Key: COUCHDB-1229
>                 URL:
>             Project: CouchDB
>          Issue Type: Bug
>          Components: HTTP Interface
>    Affects Versions: 1.1
>            Reporter: Simon Leblanc
>              Labels: URI, id, update
>         Attachments: COUCHDB-1229.patch
> Let's say you have:
> - a doc with _id foo/bar
> - a show function named baz
> - a update function named baz
> Then _show/baz/foo/bar is valid but _update/baz/foo/bar is not. Only _update/baz/foo%2Fbar
> This is particularly annoying when you want to rewrite /something/* to _update/baz/foo/*
(rewriting /something/* to _show/baz/foo/* works perfectly).

This message is automatically generated by JIRA.
For more information on JIRA, see:


View raw message