couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Randall Leeds (JIRA)" <>
Subject [jira] Commented: (COUCHDB-650) Add "now" option for ?since parameter on _changes
Date Fri, 12 Feb 2010 07:07:27 GMT


Randall Leeds commented on COUCHDB-650:

"The problem with since=now is that it can lead to missed updates."
This statement is true only under the assumption that the client cares about old updates,
which may not be the case.

I submit that this patch is non-essential (hence "Improvement"). It is always possible to
query /db to get the current seq. However, in my head I see the potential for since=now to
become a common usage pattern that avoids an extra GET.

My particular use case involves a clustering scenario (specifically, Lounge) in which I am
streaming _changes notifications from all shards and returning an opaque token that encodes
the seq number for every shard. When the redundancy configuration changes the server has a
few options when encountering a ?since request that doesn't entirely specify where to begin
listening on every shard.

1) The server uses ?since=0 on the shards of which the client has no knowledge. Clearly not
okay with a large history.
2) The server issues a /db request to the unspecified shard in order to start from "now".

I was just trying to create a shortcut for the now case, which would simplify the logic of
the server. After I received reasonably enthusiastic feedback from those present on IRC I
wrote the quick patch.

Again, non-essential. If there's a clear non-inclusion policy toward non-essential features
like this, I understand if you refuse it. As I see it, it doesn't complicate the API significantly
because it reuses the ?since parameter. I wonder now how many people would actually find this

We probably shouldn't dwell on something so small for too long. So, Chris, I'm happy for you
to just make the call. Feel free to close as wont-fix or apply as you see fit.

> Add "now" option for ?since parameter on _changes
> -------------------------------------------------
>                 Key: COUCHDB-650
>                 URL:
>             Project: CouchDB
>          Issue Type: Improvement
>          Components: HTTP Interface
>            Reporter: Randall Leeds
>            Priority: Minor
>         Attachments: 0001-add-since-now-option-to-continuous-catch-edge-cases-.patch
> As per a discussion on IRC with mikeal, jan_____, whartung, and rnewson:
> Having _changes?since="now" allows clients to listen to only new changes without making
two requests (one to extract seq from /db, and one _changes).

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message