You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@couchdb.apache.org by banjiewen <gi...@git.apache.org> on 2016/07/17 21:44:36 UTC

[GitHub] couchdb-couch-mrview pull request #51: Replace `stale` with `stable` and `up...

GitHub user banjiewen opened a pull request:

    https://github.com/apache/couchdb-couch-mrview/pull/51

    Replace `stale` with `stable` and `update`

    The `stale` mechanism for view queries conflates two independent
    concerns:
    
    1. Whether or not the view results should be returned from a "stable"
       set of shards; i.e., mem3:ushards. This semantic is new in 2.0,
       having originated in Cloudant code in 2011[1].
    
    2. Whether or not the view in question should be updated prior to
       responding to the user, i.e., the pre-2.0 semantics.
    
    Both of these concerns represent consistency/availability tradeoffs, but
    they're addressing rather different aspects of that continuum. As such,
    the "stale" mechanism limits flexibility.
    
    For example, it's quite likely that a user would want to retrieve
    "stale" view responses from the fastest available shards - the
    "available/available" choice - and this choice is not available with the
    existing "stale" mechanism. A similar argument could be made for the
    "consistent/consistent" choice.
    
    This patch introduces two new view API keywords - "stable" and "update"
    - to address concerns #1 and #2, respectively. The semantics of the
    "stale" mechanism is implemented in terms of these new keywords.
    
    COUCHDB-3063
    
    [1]: apache/couchdb-fabric@93923fda51c714c015b8621e41f3c425bfb3e61a

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/banjiewen/couchdb-couch-mrview stale-stable-update

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/couchdb-couch-mrview/pull/51.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #51
    
----
commit 459a548f269b00bf2d2ace0170c583e72fde4cb9
Author: Benjamin Anderson <b...@banjiewen.net>
Date:   2016-07-17T21:25:22Z

    Replace `stale` with `stable` and `update`
    
    The `stale` mechanism for view queries conflates two independent
    concerns:
    
    1. Whether or not the view results should be returned from a "stable"
       set of shards; i.e., mem3:ushards. This semantic is new in 2.0,
       having originated in Cloudant code in 2011[1].
    
    2. Whether or not the view in question should be updated prior to
       responding to the user, i.e., the pre-2.0 semantics.
    
    Both of these concerns represent consistency/availability tradeoffs, but
    they're addressing rather different aspects of that continuum. As such,
    the "stale" mechanism limits flexibility.
    
    For example, it's quite likely that a user would want to retrieve
    "stale" view responses from the fastest available shards - the
    "available/available" choice - and this choice is not available with the
    existing "stale" mechanism. A similar argument could be made for the
    "consistent/consistent" choice.
    
    This patch introduces two new view API keywords - "stable" and "update"
    - to address concerns #1 and #2, respectively. The semantics of the
    "stale" mechanism is implemented in terms of these new keywords.
    
    COUCHDB-3063
    
    [1]: apache/couchdb-fabric@93923fda51c714c015b8621e41f3c425bfb3e61a

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] couchdb-couch-mrview issue #51: Replace `stale` with `stable` and `update`

Posted by banjiewen <gi...@git.apache.org>.
Github user banjiewen commented on the issue:

    https://github.com/apache/couchdb-couch-mrview/pull/51
  
    This is WIP.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] couchdb-couch-mrview pull request #51: Replace `stale` with `stable` and `up...

Posted by asfgit <gi...@git.apache.org>.
Github user asfgit closed the pull request at:

    https://github.com/apache/couchdb-couch-mrview/pull/51


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] couchdb-couch-mrview issue #51: Replace `stale` with `stable` and `update`

Posted by banjiewen <gi...@git.apache.org>.
Github user banjiewen commented on the issue:

    https://github.com/apache/couchdb-couch-mrview/pull/51
  
    Tests pass along with a [fabric change][1] and a [couchdb change][2].
    
    [1]: https://github.com/apache/couchdb-fabric/pull/64
    [2]: https://github.com/apache/couchdb-couch/pull/186


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---