couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nolan Lawson <no...@nolanlawson.com>
Subject Intent to ship: _bulk_get in PouchDB 5.0.0 and PouchDB Server 1.0.0
Date Tue, 15 Sep 2015 14:09:41 GMT
Hi friends,

I've been working for some time with folks from CouchDB/Cloudant to get an
implementation of _bulk_get into CouchDB. The goal of the new endpoint is
to vastly speed up replication by avoiding unnecessary additional HTTP
requests [1].

There is already a PR by Alexander Shorin out on CouchDB itself [2], based
on some discussion of prior art [3] including a similar endpoint in rcouch
and Couchbase Sync Gateway.

In PouchDB, we implemented both a server-side version in PouchDB Server [4]
as well as a client-side version [5] which falls back to normal slow GETs
if it doesn't find a _bulk_get endpoint.

I've gotten the +1 from Will Holley that our implementation is consistent
with the proposed CouchDB version, so it is very likely that PouchDB will
ship with support for the endpoint in the next release (5.0.0, sometime
around October 1st), at which time we'll also release PouchDB Server 1.0.0,
so that folks can try out the fast new sync.

If you would like to test out the implementation yourself, it's just:

    npm install -g pouchdb-server@pouchdb/pouchdb-server#use-pouchdb-master
    npm install pouchdb@pouchdb/pouchdb

Or to download the browserified version of the master branch, you can go to
http://pouchtest.com/nightly .

Please try the proposed implementation and let us know at
http://slack.pouchdb.com, irc://freenode.net/#pouchdb, or
https://groups.google.com/forum/#!forum/pouchdb if you have any issues with
it. I'm also going to take the time before the next release to test against
Couchbase Sync Gateway. Although it's passing in our CI [6] I would like to
confirm that we are using CSG's endpoint as intended.

Cheers,
Nolan

[1]: https://issues.apache.org/jira/browse/COUCHDB-2310
[2]: https://github.com/apache/couchdb-chttpd/pull/33
[3]: https://github.com/apache/couchdb-couch/pull/18
[4]: https://github.com/pouchdb/express-pouchdb/pull/208
[5]: https://github.com/pouchdb/pouchdb/pull/4335
[6]: https://travis-ci.org/pouchdb/pouchdb/jobs/80300066

-- 
Nolan Lawson
nolanlawson.com
github.com/nolanlawson

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message