Return-Path: Delivered-To: apmail-couchdb-dev-archive@www.apache.org Received: (qmail 86163 invoked from network); 3 Nov 2010 14:52:26 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 3 Nov 2010 14:52:26 -0000 Received: (qmail 14934 invoked by uid 500); 3 Nov 2010 14:52:56 -0000 Delivered-To: apmail-couchdb-dev-archive@couchdb.apache.org Received: (qmail 14740 invoked by uid 500); 3 Nov 2010 14:52:54 -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 14724 invoked by uid 99); 3 Nov 2010 14:52:53 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 03 Nov 2010 14:52:53 +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, 03 Nov 2010 14:52:51 +0000 Received: from thor (localhost [127.0.0.1]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id oA3EqTYV017634 for ; Wed, 3 Nov 2010 14:52:29 GMT Message-ID: <8898086.220191288795949618.JavaMail.jira@thor> Date: Wed, 3 Nov 2010 10:52:29 -0400 (EDT) From: "Adam Kocoloski (JIRA)" To: dev@couchdb.apache.org Subject: [jira] Commented: (COUCHDB-523) View API POST keys to retrieve multiple docs by key could also allow for multiple 'range' queries, i.e. an array of { startkey: .., endkey: ... } params in the POST In-Reply-To: <1691174737.1255021831754.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/COUCHDB-523?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12927868#action_12927868 ] Adam Kocoloski commented on COUCHDB-523: ---------------------------------------- I've been thinking about this issue a bit and would like to propose an alternative syntax. Instead of relying on overloading the "keys" field with things that are not really view keys, we could allow a new field called "queries" that looks like {"queries":[{"key":"foo"}, {"startkey":"bar", "endkey":"baz", "limit":10}, ...]} That is, each element of the queries Array would be a JSON Object specifying view query parameters. Any parameters specified in the actual query string would be included as defaults. CouchDB would execute the view requests serially and respond with an Array of view responses [ {"total_rows":100, "offset":34, "rows":[...]}, {"total_rows":100, "offset":20, "rows":[...]} ] The "keys" field and the "queries" field would be mutually exclusive. The Objects in the queries Array would allow a user to specify any query-string parameter used with CouchDB views. I'm not sure if _list functions would be supported. This feature is really a crutch to help HTTP clients that cannot avail themselves of advanced HTTP features such as pipelining. I'm happy to add it, though, as that the set of clients which do support pipelining is not that large. What do you think? > View API POST keys to retrieve multiple docs by key could also allow for multiple 'range' queries, i.e. an array of { startkey: .., endkey: ... } params in the POST > -------------------------------------------------------------------------------------------------------------------------------------------------------------------- > > Key: COUCHDB-523 > URL: https://issues.apache.org/jira/browse/COUCHDB-523 > Project: CouchDB > Issue Type: Improvement > Components: HTTP Interface > Reporter: Nathan Stott > Assignee: Adam Kocoloski > Priority: Minor > Fix For: 1.1 > > Attachments: couch_httpd_view.erl, multi_start_end_key.diff, ranged_key_post.diff > > > It would be useful if I could do a single POST to a view to retrieve multiple ranges specified by startkey, endkey. > The format could be as follows: > { "ranges": [ { "startkey": "a", "endkey": "c" }, { "startkey":"g", "endkey":"z" } ] } -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.