Thomas, thanks for reply. Also thank you for creation this pure Java databse engine. In my case I would prefer H2 versus Derby because of MVC and other features. However I have some concerns/questions about durability.
Before asking my question I've already read the docs you are referring. I agree that HDDs are slow if app tries to sync frequently. But there are other technologies that allow fast syncs: SSDs, SANs, some exotic controllers and HDDs with batteries. Some of them guarantee true syncs. Also some applications rank durability prior than performance. May be, in order of new feature, it would make sense to add sync/ force after log flush in commit method that can be turned on with URL parameter? 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. Also, a pair COMMIT,CHECKPOINT SYNC is not atomic. It may create uncertainty. CHECKPOINT SYNC may fail after a successful COMMIT, but it is unknown was the COMMIT actually written on storage device or not. So, if COMMIT happened to be saved then entire "logical commit" was successful despite CHECKPOINT SYNC has failed. -- 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.
