A ZODB transaction with FileStorage calls flush() before reporting that a transaction has committed. That's the durability guarantee you get. There's only one kind of transaction in ZODB, and it has the standard ACID properties. I suppose we could consider more flexibility in ZODB4, although I'm not sure that it would rank high on the priority list. Jeremy