Hi,

> But there are other technologies that allow fast syncs: SSDs, SANs,
> some exotic controllers and HDDs with batteries. Some of them
> guarantee true syncs.

Yes. In that case, you could use WRITE_DELAY of 0 and a file access
mode "rws" or "rwd". I think this is what Apache Derby uses. Apache
Derby doesn't call FileDescriptor.sync() for each commit either. See
also http://h2database.com/html/performance.html#performance_comparison

> Is my understanding correct that CHECKPOINT SYNC will flush not only
> log buffers but also dirty data blocks? If yes, then it will slow down
> performance of commit.

Yes, that's true.

> Also, a pair COMMIT,CHECKPOINT SYNC is not atomic.
> It may create uncertainty.

There is anyway some kind of uncertainty if there is a crash *within*
commit, even if each commit itself is 100% guaranteed atomic. Because
you couldn't tell where exactly within the commit the crash occurred
(just before commit returned, or at the beginning of the commit call).

Regards,
Thomas

-- 
You received this message because you are subscribed to the Google Groups "H2 
Database" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/h2-database?hl=en.

Reply via email to