I don't understand how documents in a view should be fetched "since" some
sequence, do you mean "last changed documents that appear in this view"?

Two stupid suggestions just to get the explanations:

1. fetch _changes with a filter function filtering for type0 documents
2. in the view map function rely on timestamps and emit keys like [type0,
timestamp], then fetch since the last timestsmp
3. instead of timestamps, use sequences: generate the sequence number at
the time you're saving the document, save it as a field of the document,
then emit it in the view: [type0, seq]
On 15 Sep 2016 6:58 am, "max" <maxima...@gmail.com> wrote:

> No one ?
>
>
>
> 2016-09-09 17:48 GMT+02:00 max <maxima...@gmail.com>:
>
> > Hi,
> >
> > I'm looking for the best or at least a good way to fetch multiple
> > documents because my databases are getting larger and larger. Thus, I'm
> > trying to limit user waiting time, but in a multiple user environment.
> >
> > Each document got an "ancestorId" property to group it by type.
> > When a user fetchs docments he called the view "byancestor" precising
> > key="type0"&include_docs=true.
> >
> > By using this view, the entire database does not need to be downloaded
> > when we want just one type of documents.
> >
> > Now I would like to use sequence number to limit bandwidth and time. That
> > is to say last time user fetch type0 documents he precised
> > "update_seq=true" and get the last sequence number.
> > Then next time he will fetch type0 documents I want it to got changes
> from
> > this sequence number, thus the result of the request will not contain
> > documents that was modified before this seq.
> >
> > It would have been cool to be able to send a "since" (such as _changes
> > API) query parameter to the view to reduce it but of course it is not
> > possible.
> >
> > Here is what I have tried:
> >
> > I.
> > - make a first request to query the view WITHOUT include_docs to limit
> > bandwidth
> > - compute the documents id list that needs to be fetched
> > - POST this list to "_all_docs" WITH include_docs to fetch documents
> >
> > This does the job, but the first query to the view will get larger and
> > larger...
> >
> > II.
> > - modidy my view in _design to emit   emit([doc.ancestorId,
> > doc._local_seq]
> > - query this view with parameters: ?startkey=["type0",
> > fromSeqNumber]&endkey=["type0",{}] WITH include_docs
> >
> > The last tries seems to be my best shot, but I do not know how it's work
> > and whether it's better than a filter or my original query (computing
> time).
> >
> > Maybe I missed a feature to achieve this kind of documents fetch...
> > Thanks for any answers.
> >
> > (Using CouchDB 1.4)
> >
>

Reply via email to