Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
We have the _doc_ids and _design _changes filter as of CouchDB 1.1.0.
While they meet the expectations of applications/users, they're far from efficient for large databases.
Basically the implementation folds the entire seq btree and then filters values by the document's ID, causing too much IO and busting caches. This makes replication by doc IDs not so efficient as it could be.
The proposed patch avoids this by doing direct lookups in the ID btree, for _doc_ids, and ranged fold for _design.
If there are no objections, I would apply to branch 1.2.x besides