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

Adam Kocoloski commented on COUCHDB-568:
----------------------------------------

Yes, an error could make the state go backwords, just like killing couch before 
the fsync.

> When delayed_commits = true, keep updated btree nodes in memory until the 
> commit
> --------------------------------------------------------------------------------
>
>                 Key: COUCHDB-568
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-568
>             Project: CouchDB
>          Issue Type: Improvement
>    Affects Versions: 0.10
>            Reporter: Adam Kocoloski
>
> rnewson reported on IRC that the new batch=ok implementation results in 
> significantly larger overhead in the .couch files.  This makes sense; the old 
> batch mode waited 1 second before saving, but the new implementation just 
> updates the doc asynchronously.  With fast hardware and moderate write rates 
> it's likely that each document is being written separately.
> The overhead presumably arises from frequently updated btree inner nodes 
> being written to disk many times over.  I'm interested in exploring a 
> modification of the delayed_commits mode whereby the updated btree nodes are 
> not actually written to disk immediately, but are instead held in memory 
> until the commit.  I'd like to think that this will result in more compact 
> files without any decrease in durability.  New read requests would still be 
> able to access these in-memory nodes.
> I realize the notion that updates go directly to disk is baked pretty deeply 
> into couch_btree, but I still thought this was worth bringing up to a wider 
> audience.

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

Reply via email to