You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@couchdb.apache.org by "Brian Candler (JIRA)" <ji...@apache.org> on 2009/11/01 22:01:59 UTC
[jira] Created: (COUCHDB-548) Limitations of open_revs=all
Limitations of open_revs=all
----------------------------
Key: COUCHDB-548
URL: https://issues.apache.org/jira/browse/COUCHDB-548
Project: CouchDB
Issue Type: Improvement
Components: HTTP Interface
Reporter: Brian Candler
Priority: Minor
The GET option ?open_revs=all would be useful for retrieving all conflicting versions of a document in one go, but has the following problems.
1. The documents are returned in an arbitrary order which is unrelated to the conflict-winning algorithm. For example, you can't rely on the first revision returned being the one which a plain GET would return.
2. It includes tips of branches which are no longer live (i.e. the tip document has been deleted). Although these can be filtered out client-side by looking for a "_deleted":true member, it transfers unnecessary revs, potentially a large number of them.
3. It is somewhat inconvenient that it returns an array of {"ok":{..doc..}} or "missing":"rev", rather than just an array of docs. Again, this can be normalized client-side. But I observe that if only live branches were returned, then they would always be "ok" and so this layer wouldn't be needed.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (COUCHDB-548) Limitations of open_revs=all
Posted by "Paul Joseph Davis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/COUCHDB-548?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Paul Joseph Davis updated COUCHDB-548:
--------------------------------------
Skill Level: Regular Contributors Level (Easy to Medium)
> Limitations of open_revs=all
> ----------------------------
>
> Key: COUCHDB-548
> URL: https://issues.apache.org/jira/browse/COUCHDB-548
> Project: CouchDB
> Issue Type: Improvement
> Components: HTTP Interface
> Reporter: Brian Candler
> Priority: Minor
>
> The GET option ?open_revs=all would be useful for retrieving all conflicting versions of a document in one go, but has the following problems.
> 1. The documents are returned in an arbitrary order which is unrelated to the conflict-winning algorithm. For example, you can't rely on the first revision returned being the one which a plain GET would return.
> 2. It includes tips of branches which are no longer live (i.e. the tip document has been deleted). Although these can be filtered out client-side by looking for a "_deleted":true member, it transfers unnecessary revs, potentially a large number of them.
> 3. It is somewhat inconvenient that it returns an array of {"ok":{..doc..}} or "missing":"rev", rather than just an array of docs. Again, this can be normalized client-side. But I observe that if only live branches were returned, then they would always be "ok" and so this layer wouldn't be needed.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.