Next: , Previous: , Up: Overview   [Contents][Index]


1.6 Transactions

No changes are written on disk until the current transaction is closed. All the changes associated with a closed transaction appear on disk atomically, i.e. all at once. Should the transaction fail, no change appears on disk.

No disk blocks are overwritten during transaction closing. The modified blocks are rewritten at a new location, with the both pre- and post- transaction database states coexisting on disk when the transaction completes.

The only method of transaction rollback is closing and reopening the database (without closing the transaction).

No disk syncing is automatically triggered by closing transactions (fsync is not called), and data may not actually get written until later. Applications may trigger the syncing themselves. Disk syncing does slow database operation, and too much of it may see dismal performance.