incubator-couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Adam Kocoloski (JIRA)" <j...@apache.org>
Subject [jira] Commented: (COUCHDB-1084) Remove unnecessary btree lookup inside couch_db_updater
Date Tue, 08 Mar 2011 03:48:59 GMT

    [ https://issues.apache.org/jira/browse/COUCHDB-1084?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13003799#comment-13003799
] 

Adam Kocoloski commented on COUCHDB-1084:
-----------------------------------------

Hey, nothing says Damien like a 400 line Subversion patch file.  Welcome back!

I think the whitespace change to couch_view_updater can be safely removed from the patch.
 I also reviewed the db_updater half of the patch with an eye towards making it smaller. 
Here's what I've got so far:

https://github.com/kocolosk/couchdb/compare/1084-remove-unnecessary-lookup

I'd like to better understand how the VM manages anonymous functions and whether there will
be any issues creating one for each document update like that.

Good stuff, though.  I definitely get the gist of the patch and I like it.

> Remove unnecessary btree lookup inside couch_db_updater
> -------------------------------------------------------
>
>                 Key: COUCHDB-1084
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-1084
>             Project: CouchDB
>          Issue Type: Improvement
>          Components: Database Core
>    Affects Versions: 1.2
>            Reporter: Damien Katz
>            Assignee: Damien Katz
>         Attachments: remove_btree_lookup.patch
>
>
> The CouchDB update process has an unnecessary btree lookup, where it reads the values
in bulks, checks for conflicts, writes the docs to disk, updates the values appropriately
and writes them to the btree out in a second step. It's possible to avoid this second step,
and instead do all the checking, doc writing and value transformation in a single btree lookup,
thereby reducing the number of btree traversals and disk IO.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message