tdb: make TDB_NOSYNC merely disable sync.
authorRusty Russell <rusty@rustcorp.com.au>
Fri, 22 Jun 2012 05:37:44 +0000 (15:07 +0930)
committerRusty Russell <rusty@rustcorp.com.au>
Fri, 22 Jun 2012 05:35:17 +0000 (07:35 +0200)
commit1783fe34433f9bb4b939de3231a7c296390ec426
tree42d25680bc9c1e209a841b1a0d8fdc1d92297db4
parent945473aac0abffd8509bbeef3ed5a32737b7df51
tdb: make TDB_NOSYNC merely disable sync.

(As suggested by Stefan Metzmacher, based on the change to ntdb.)

Since commit ec96ea690edbe3398d690b4a953d487ca1773f1c, we handle the case
where a process dies during a transaction commit.  Unfortunately, TDB_NOSYNC
means this no longer works, as it disables the recovery area as well as the
actual msync/fsync.  We should do everything except the syncs.

This also means we can do a complete test with $TDB_NO_FSYNC set; just
to get more complete coverage, we disable it explicitly for one test
(where we override the actual sync calls anyway).

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
lib/tdb/common/transaction.c
lib/tdb/test/run-transaction-expand.c
lib/tdb/wscript