On Mon, Jan 5, 2009 at 11:32 AM, Damien Katz <[email protected]> wrote:
>>
>> 1) delayed commit (what you did last night)
>> 2) fsync() commit (what I suspect Couch did on and around 0.8)
>> 3) optional F_FULLSYNC commit, on OS X and any other platform that
>> provides this level of commit
>>
>
> If necessary and possible, we'll patch the Erlang VM. But if a platform
> doesn't support proper flushing, then it's not a platform that can support
> an ACID database.
>

If I follow correctly, you're saying that on OS X, 2 == 1, so we use 3
when we want to be ACID. On Linux, as far as we know, 2 will support
ACID. There's only really two options, ACID commit, and delayed
commit. It's up to CouchDB / Erlang / the OS to make sure that the
ACID option isn't false advertising. Makes sense.


> Definitely, I think commit options should be settable per-database. But for
> now I was just wanting to address the slowdown, especially for replication
> and the tests, to keep everyone productive. More commit features and options
> is lower priority work for now, I was just addresses the most serious
> slowdown.

The config system is so flexible and easy to hook into, that I'm not
worried about adding these settings. Should be a breeze once the
software itself is settled.

+1 to the whole thing.

-- 
Chris Anderson
http://jchris.mfdz.com

Reply via email to