ntdb: respect TDB_NO_FSYNC flag for 'make test'
authorRusty Russell <rusty@rustcorp.com.au>
Thu, 21 Jun 2012 23:47:13 +0000 (09:17 +0930)
committerRusty Russell <rusty@rustcorp.com.au>
Fri, 22 Jun 2012 05:35:16 +0000 (07:35 +0200)
This reduces test time from 31 seconds to 6, on my laptop.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
51 files changed:
lib/ntdb/test/api-12-store.c
lib/ntdb/test/api-13-delete.c
lib/ntdb/test/api-14-exists.c
lib/ntdb/test/api-16-wipe_all.c
lib/ntdb/test/api-20-alloc-attr.c
lib/ntdb/test/api-21-parse_record.c
lib/ntdb/test/api-55-transaction.c
lib/ntdb/test/api-80-tdb_fd.c
lib/ntdb/test/api-81-seqnum.c
lib/ntdb/test/api-82-lockattr.c
lib/ntdb/test/api-83-openhook.c
lib/ntdb/test/api-91-get-stats.c
lib/ntdb/test/api-92-get-set-readonly.c
lib/ntdb/test/api-93-repack.c
lib/ntdb/test/api-add-remove-flags.c
lib/ntdb/test/api-check-callback.c
lib/ntdb/test/api-firstkey-nextkey.c
lib/ntdb/test/api-fork-test.c
lib/ntdb/test/api-locktimeout.c
lib/ntdb/test/api-missing-entries.c
lib/ntdb/test/api-open-multiple-times.c
lib/ntdb/test/api-record-expand.c
lib/ntdb/test/api-simple-delete.c
lib/ntdb/test/api-summary.c
lib/ntdb/test/external-agent.c
lib/ntdb/test/no-fsync.h [new file with mode: 0644]
lib/ntdb/test/run-01-new_database.c
lib/ntdb/test/run-02-expand.c
lib/ntdb/test/run-03-coalesce.c
lib/ntdb/test/run-04-basichash.c
lib/ntdb/test/run-05-readonly-open.c
lib/ntdb/test/run-10-simple-store.c
lib/ntdb/test/run-11-simple-fetch.c
lib/ntdb/test/run-12-check.c
lib/ntdb/test/run-15-append.c
lib/ntdb/test/run-25-hashoverload.c
lib/ntdb/test/run-30-exhaust-before-expand.c
lib/ntdb/test/run-35-convert.c
lib/ntdb/test/run-56-open-during-transaction.c
lib/ntdb/test/run-57-die-during-transaction.c
lib/ntdb/test/run-64-bit-tdb.c
lib/ntdb/test/run-90-get-set-attributes.c
lib/ntdb/test/run-capabilities.c
lib/ntdb/test/run-expand-in-transaction.c
lib/ntdb/test/run-features.c
lib/ntdb/test/run-lockall.c
lib/ntdb/test/run-remap-in-read_traverse.c
lib/ntdb/test/run-seed.c
lib/ntdb/test/run-tdb_foreach.c
lib/ntdb/test/run-traverse.c
lib/ntdb/test/tap-interface.h

index 8f1f42352b14267fdc35fd97a22be11cd47c07ca..45274e0c67d856b43366168eddb98682ed77798c 100644 (file)
@@ -34,8 +34,8 @@ int main(int argc, char *argv[])
 
        plan_tests(sizeof(flags) / sizeof(flags[0]) * (1 + 500 * 3) + 1);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-12-store.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &fixed_hattr);
+               ntdb = ntdb_open("run-12-store.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &fixed_hattr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
index 9bf4026d12d1f605ff61e3c834f0b4625ded5af3..cded8fde0bdafc3b4a0b1ad522459541a342fc24 100644 (file)
@@ -160,8 +160,8 @@ int main(int argc, char *argv[])
        plan_tests(sizeof(flags) / sizeof(flags[0])
                   * (39 * 3 + 5 + sizeof(vals)/sizeof(vals[0])*2) + 1);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-13-delete.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &clash_hattr);
+               ntdb = ntdb_open("run-13-delete.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &clash_hattr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
@@ -180,7 +180,7 @@ int main(int argc, char *argv[])
                ntdb_close(ntdb);
 
                /* Deleting these entries in the db gave problems. */
-               ntdb = ntdb_open("run-13-delete.ntdb", flags[i],
+               ntdb = ntdb_open("run-13-delete.ntdb", flags[i]|MAYBE_NOSYNC,
                               O_RDWR|O_CREAT|O_TRUNC, 0600, &fixed_hattr);
                ok1(ntdb);
                if (!ntdb)
index 88663cad65550eb260e3b0cc315bf597ca67d1cf..abaaae0ee54d8ca1832ab8346040819fbdd4d0d0 100644 (file)
@@ -42,7 +42,7 @@ int main(int argc, char *argv[])
 
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 2 + 1);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-14-exists.ntdb", flags[i],
+               ntdb = ntdb_open("run-14-exists.ntdb", flags[i]|MAYBE_NOSYNC,
                               O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                if (ok1(ntdb))
                        ok1(test_records(ntdb));
index c1bda8e4f408716d26d222c91a56960b85c25515..6a6075275eb8ead08e20b587d32788528c333416 100644 (file)
@@ -30,7 +30,7 @@ int main(int argc, char *argv[])
 
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 4 + 1);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-16-wipe_all.ntdb", flags[i],
+               ntdb = ntdb_open("run-16-wipe_all.ntdb", flags[i]|MAYBE_NOSYNC,
                               O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                if (ok1(ntdb)) {
                        NTDB_DATA key;
index 5b4fb131f002a67e6c0289080d30dc5921f4a966..e4ec89a334f02720906d8e28207adb50e994c1c5 100644 (file)
@@ -82,7 +82,7 @@ int main(int argc, char *argv[])
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
                curr_ntdb = NULL;
                curr_file = NULL;
-               ntdb = ntdb_open("run-12-store.ntdb", flags[i],
+               ntdb = ntdb_open("run-12-store.ntdb", flags[i]|MAYBE_NOSYNC,
                               O_RDWR|O_CREAT|O_TRUNC, 0600, &alloc_attr);
                ok1(ntdb);
                if (!ntdb)
index fa48562e17755b87c708eb9c7ecf3c709f7d52d7..975bbfaf1c97867cb0868becd6628c838e0b3dad 100644 (file)
@@ -55,8 +55,9 @@ int main(int argc, char *argv[])
 
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 2 + 1);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("api-21-parse_record.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("api-21-parse_record.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                if (ok1(ntdb))
                        ok1(test_records(ntdb));
                ntdb_close(ntdb);
index d51dd0b13e8b582f0f43cb4c4df481ad85d9aa35..01a1dcea1b8f33e64801806ca8f8ed7add3c6d6d 100644 (file)
@@ -24,8 +24,9 @@ int main(int argc, char *argv[])
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 20 + 1);
 
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-55-transaction.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-55-transaction.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
index 39a9df414eb64f38cdf72729f51e7841ae69ee8b..81b7284749ec169bec3715701f3eb30045b3d7f6 100644 (file)
@@ -16,7 +16,7 @@ int main(int argc, char *argv[])
 
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 3);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("api-80-ntdb_fd.ntdb", flags[i],
+               ntdb = ntdb_open("api-80-ntdb_fd.ntdb", flags[i]|MAYBE_NOSYNC,
                               O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                if (!ok1(ntdb))
                        continue;
index 93ad53ab077b2aa4d32bf09a2cbc29cf0ae717cb..04f49cdbe3d192eeaf22b1f8081dfcdc0e696383 100644 (file)
@@ -20,8 +20,9 @@ int main(int argc, char *argv[])
 
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 15 + 4 * 13);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("api-81-seqnum.ntdb", flags[i]|NTDB_SEQNUM,
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("api-81-seqnum.ntdb",
+                                flags[i]|NTDB_SEQNUM|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                if (!ok1(ntdb))
                        continue;
 
index 30de7dfddfb608ae1b34a907d229f42a678aa683..4fbe1d232a6ac1f78005929fe65ddb1f2b38568a 100644 (file)
@@ -65,31 +65,31 @@ int main(int argc, char *argv[])
 
                /* Nonblocking open; expect no error message. */
                lock_err = EAGAIN;
-               ntdb = ntdb_open("run-82-lockattr.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &lock_attr);
+               ntdb = ntdb_open("run-82-lockattr.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &lock_attr);
                ok(errno == lock_err, "Errno is %u", errno);
                ok1(!ntdb);
                ok1(tap_log_messages == 0);
 
                lock_err = EINTR;
-               ntdb = ntdb_open("run-82-lockattr.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &lock_attr);
+               ntdb = ntdb_open("run-82-lockattr.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &lock_attr);
                ok(errno == lock_err, "Errno is %u", errno);
                ok1(!ntdb);
                ok1(tap_log_messages == 0);
 
                /* Forced fail open. */
                lock_err = ENOMEM;
-               ntdb = ntdb_open("run-82-lockattr.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &lock_attr);
+               ntdb = ntdb_open("run-82-lockattr.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &lock_attr);
                ok1(errno == lock_err);
                ok1(!ntdb);
                ok1(tap_log_messages == 1);
                tap_log_messages = 0;
 
                lock_err = 0;
-               ntdb = ntdb_open("run-82-lockattr.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &lock_attr);
+               ntdb = ntdb_open("run-82-lockattr.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &lock_attr);
                if (!ok1(ntdb))
                        continue;
                ok1(tap_log_messages == 0);
index 666b4b8d8fa9e7fb8f824761b42fd7ed6c946ae7..31c789ead85b4be2a9874de32fd1e729f52b5316 100644 (file)
@@ -60,15 +60,15 @@ int main(int argc, char *argv[])
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 13);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
                /* Create it */
-               ntdb = ntdb_open("run-83-openhook.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, NULL);
+               ntdb = ntdb_open("run-83-openhook.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, NULL);
                ok1(ntdb);
                ok1(ntdb_store(ntdb, key, key, NTDB_REPLACE) == 0);
                ntdb_close(ntdb);
 
                /* Now, open with CIF, should clear it. */
-               ntdb = ntdb_open("run-83-openhook.ntdb", flags[i],
-                              O_RDWR, 0, &cif);
+               ntdb = ntdb_open("run-83-openhook.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR, 0, &cif);
                ok1(ntdb);
                ok1(!ntdb_exists(ntdb, key));
                ok1(ntdb_store(ntdb, key, key, NTDB_REPLACE) == 0);
index e44b8a5061f168f4c9691e1b58d2e5be265004d4..1ed36f028daa1e7fc980ee861d78b38dc8db91e3 100644 (file)
@@ -21,8 +21,8 @@ int main(int argc, char *argv[])
                union ntdb_attribute *attr;
                NTDB_DATA key = ntdb_mkdata("key", 3), data;
 
-               ntdb = ntdb_open("run-91-get-stats.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-91-get-stats.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                /* Force an expansion */
                data.dsize = 65536;
index 7abd304eef29319ee2b4c05e3eaad38629bd93be..81eadff32321bd5a7ddc3353543a4b5387b72e6e 100644 (file)
@@ -19,8 +19,9 @@ int main(int argc, char *argv[])
 
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
                /* RW -> R0 */
-               ntdb = ntdb_open("run-92-get-set-readonly.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-92-get-set-readonly.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                ok1(!(ntdb_get_flags(ntdb) & NTDB_RDONLY));
 
@@ -69,8 +70,9 @@ int main(int argc, char *argv[])
                ntdb_close(ntdb);
 
                /* R0 -> RW */
-               ntdb = ntdb_open("run-92-get-set-readonly.ntdb", flags[i],
-                              O_RDONLY, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-92-get-set-readonly.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDONLY, 0600, &tap_log_attr);
                ok1(ntdb);
                ok1(ntdb_get_flags(ntdb) & NTDB_RDONLY);
 
index 168bc24c0a9470a57a71512480c82093ed57dc6e..4a30c57edfa2380d0540ce41fdf633683bacc2f5 100644 (file)
@@ -59,8 +59,9 @@ int main(int argc, char *argv[])
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 6 + 1);
 
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-93-repack.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-93-repack.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                if (!ntdb)
                        break;
index 4888c32f0659dd6a63999aaef7c2af22410746d8..c5a3f421fc99c627d12bdd9c79808510d64493c6 100644 (file)
@@ -16,8 +16,9 @@ int main(int argc, char *argv[])
 
        plan_tests(87);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-add-remove-flags.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-add-remove-flags.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
index 3050fcddd972617e105b1a09f0872854ba556c42..0263f616da5d4382488e3b75b33a7043b27671e2 100644 (file)
@@ -65,8 +65,9 @@ int main(int argc, char *argv[])
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
                bool array[NUM_RECORDS];
 
-               ntdb = ntdb_open("run-check-callback.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-check-callback.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
index da1a68043bbf5c5995c4d306987435025f02c8ae..5e83e6bf77d988cade2b6df69430eb2ab0baf19e 100644 (file)
@@ -65,9 +65,10 @@ int main(int argc, char *argv[])
        plan_tests(sizeof(flags) / sizeof(flags[0])
                   * (NUM_RECORDS*6 + (NUM_RECORDS-1)*3 + 22) + 1);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("api-firstkey-nextkey.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600,
-                              &seed_attr);
+               ntdb = ntdb_open("api-firstkey-nextkey.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600,
+                                &seed_attr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
index 63003dad3a978046e0fa6c69b0a8207c855cefaf..6298a4af01874f28c2216057a180c1451555a3cf 100644 (file)
@@ -64,8 +64,9 @@ int main(int argc, char *argv[])
 
                tap_log_messages = 0;
 
-               ntdb = ntdb_open("run-fork-test.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-fork-test.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                if (!ok1(ntdb))
                        continue;
 
index cafe067d0bb8e1a02ed18200c279d6bcf0c8c739..5e24d58dc438e6946fb46cd089d216e11a69f808 100644 (file)
@@ -142,8 +142,9 @@ int main(int argc, char *argv[])
 
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
                enum NTDB_ERROR ecode;
-               ntdb = ntdb_open("run-locktimeout.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-locktimeout.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                if (!ok1(ntdb))
                        break;
 
index b77f8ff31f4827f770e09b3c45e1f1b1f8fe6a4f..d9a1fd97d5ad107bb4ceb60efa7ea00dd4f1f032 100644 (file)
@@ -30,7 +30,7 @@ int main(int argc, char *argv[])
        plan_tests(1 + NUM_RECORDS + 2);
 
        ntdb = ntdb_open("run-missing-entries.ntdb", NTDB_INTERNAL,
-                      O_RDWR|O_CREAT|O_TRUNC, 0600, &hattr);
+                        O_RDWR|O_CREAT|O_TRUNC, 0600, &hattr);
        if (ok1(ntdb)) {
                for (i = 0; i < NUM_RECORDS; i++) {
                        ok1(ntdb_store(ntdb, key, data, NTDB_REPLACE) == 0);
index 70bad00568503d6bd63186fe63c9ad76c44ea044..217732d227ba2d8622df26ac5c36a340160b56ab 100644 (file)
@@ -19,14 +19,16 @@ int main(int argc, char *argv[])
 
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 28);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-open-multiple-times.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-open-multiple-times.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
 
-               ntdb2 = ntdb_open("run-open-multiple-times.ntdb", flags[i],
-                               O_RDWR|O_CREAT, 0600, &tap_log_attr);
+               ntdb2 = ntdb_open("run-open-multiple-times.ntdb",
+                                 flags[i]|MAYBE_NOSYNC,
+                                 O_RDWR|O_CREAT, 0600, &tap_log_attr);
                ok1(ntdb_check(ntdb, NULL, NULL) == 0);
                ok1(ntdb_check(ntdb2, NULL, NULL) == 0);
 
@@ -49,8 +51,9 @@ int main(int argc, char *argv[])
                free(d.dptr);
 
                /* Reopen */
-               ntdb = ntdb_open("run-open-multiple-times.ntdb", flags[i],
-                              O_RDWR|O_CREAT, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-open-multiple-times.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT, 0600, &tap_log_attr);
                ok1(ntdb);
 
                ok1(ntdb_transaction_start(ntdb2) == 0);
index cea5a10bfbba83131ac3398e3edba5c960e4ec48..8786fc7e5c4c8f8603e18d608f2a33cf79ab23da 100644 (file)
@@ -26,8 +26,9 @@ int main(int argc, char *argv[])
        plan_tests(sizeof(flags) / sizeof(flags[0])
                   * (3 + (1 + (MAX_SIZE/SIZE_STEP)) * 2) + 1);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-record-expand.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-record-expand.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
index 2b20e199ee29cc293b3a743788c0bcd3dbc73a7f..dedc433d1fcc2a99e9ba331ed2af92369162860e 100644 (file)
@@ -18,8 +18,9 @@ int main(int argc, char *argv[])
 
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 7 + 1);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-simple-delete.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-simple-delete.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                if (ntdb) {
                        /* Delete should fail. */
index 8060ef29be7b521d77a81baf0b4d91d9ae2bb60f..df5d092a60b9ad1a6450abc7cd3bc319d70763e9 100644 (file)
@@ -20,8 +20,8 @@ int main(int argc, char *argv[])
 
        plan_tests(sizeof(flags) / sizeof(flags[0]) * (1 + 2 * 5) + 1);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-summary.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-summary.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
index 46654c2e64b8f2ef2c2971b5ec62938cdd73e606..a06b70f7885d1924449956fa3a17643907bd5256 100644 (file)
@@ -76,7 +76,7 @@ static enum agent_return do_operation(enum operation op, const char *name)
                        diag("Already have ntdb %s open", ntdb_name(ntdb));
                        return OTHER_FAILURE;
                }
-               ntdb = ntdb_open(name, NTDB_DEFAULT, O_RDWR, 0, &tap_log_attr);
+               ntdb = ntdb_open(name, MAYBE_NOSYNC, O_RDWR, 0, &tap_log_attr);
                if (!ntdb) {
                        if (!locking_would_block)
                                diag("Opening ntdb gave %s", strerror(errno));
@@ -93,7 +93,7 @@ static enum agent_return do_operation(enum operation op, const char *name)
                cif.openhook.base.attr = NTDB_ATTRIBUTE_OPENHOOK;
                cif.openhook.base.next = &tap_log_attr;
                cif.openhook.fn = clear_if_first;
-               ntdb = ntdb_open(name, NTDB_DEFAULT, O_RDWR, 0, &cif);
+               ntdb = ntdb_open(name, MAYBE_NOSYNC, O_RDWR, 0, &cif);
                if (!ntdb) {
                        if (!locking_would_block)
                                diag("Opening ntdb gave %s", strerror(errno));
diff --git a/lib/ntdb/test/no-fsync.h b/lib/ntdb/test/no-fsync.h
new file mode 100644 (file)
index 0000000..f0c098e
--- /dev/null
@@ -0,0 +1,6 @@
+#ifndef NTDB_NO_FSYNC_H
+#define NTDB_NO_FSYNC_H
+/* Obey $TDB_NO_FSYNC, a bit like tdb does (only note our NTDB_NOSYNC
+ * does less) */
+#define MAYBE_NOSYNC (getenv("TDB_NO_FSYNC") ? NTDB_NOSYNC : 0)
+#endif
index ae70e86e0728328d8144ed26d15f4f21c6f20986..fe142bdece3cf8dd32023d4333b5a0043d506818 100644 (file)
@@ -18,8 +18,8 @@ int main(int argc, char *argv[])
        failtest_exit_check = exit_check_log;
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 3);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-new_database.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-new_database.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                if (!ok1(ntdb))
                        failtest_exit(exit_status());
 
index 2c8b1a291b40d2df8dac6b0990a54a2bea33ab48..635bf8920655a7aed903155581bb16493ffb72de 100644 (file)
@@ -22,8 +22,8 @@ int main(int argc, char *argv[])
 
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
                failtest_suppress = true;
-               ntdb = ntdb_open("run-expand.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-expand.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                if (!ok1(ntdb))
                        break;
 
index 363c078fc6bed3f0e5a962cf9d12553d1f18e629..dc76e6a4ad3c37e504d8af4c0ddf7fc7782d9532 100644 (file)
@@ -38,8 +38,8 @@ int main(int argc, char *argv[])
        ntdb_layout_add_free(layout, len, 0);
        ntdb_layout_write(layout, free, &tap_log_attr, "run-03-coalesce.ntdb");
        /* NOMMAP is for lockcheck. */
-       ntdb = ntdb_open("run-03-coalesce.ntdb", NTDB_NOMMAP, O_RDWR, 0,
-                      &tap_log_attr);
+       ntdb = ntdb_open("run-03-coalesce.ntdb", NTDB_NOMMAP|MAYBE_NOSYNC,
+                        O_RDWR, 0, &tap_log_attr);
        ok1(ntdb_check(ntdb, NULL, NULL) == 0);
        ok1(free_record_length(ntdb, layout->elem[1].base.off) == len);
 
@@ -64,8 +64,8 @@ int main(int argc, char *argv[])
        ntdb_layout_add_used(layout, key, data, 6);
        ntdb_layout_write(layout, free, &tap_log_attr, "run-03-coalesce.ntdb");
        /* NOMMAP is for lockcheck. */
-       ntdb = ntdb_open("run-03-coalesce.ntdb", NTDB_NOMMAP, O_RDWR, 0,
-                      &tap_log_attr);
+       ntdb = ntdb_open("run-03-coalesce.ntdb", NTDB_NOMMAP|MAYBE_NOSYNC,
+                        O_RDWR, 0, &tap_log_attr);
        ok1(free_record_length(ntdb, layout->elem[1].base.off) == 15528);
        ok1(ntdb_check(ntdb, NULL, NULL) == 0);
 
@@ -90,8 +90,8 @@ int main(int argc, char *argv[])
        ntdb_layout_add_free(layout, 14520, 0);
        ntdb_layout_write(layout, free, &tap_log_attr, "run-03-coalesce.ntdb");
        /* NOMMAP is for lockcheck. */
-       ntdb = ntdb_open("run-03-coalesce.ntdb", NTDB_NOMMAP, O_RDWR, 0,
-                      &tap_log_attr);
+       ntdb = ntdb_open("run-03-coalesce.ntdb", NTDB_NOMMAP|MAYBE_NOSYNC,
+                        O_RDWR, 0, &tap_log_attr);
        ok1(free_record_length(ntdb, layout->elem[1].base.off) == 1024);
        ok1(free_record_length(ntdb, layout->elem[2].base.off) == 14520);
        ok1(ntdb_check(ntdb, NULL, NULL) == 0);
@@ -120,8 +120,8 @@ int main(int argc, char *argv[])
        ntdb_layout_add_used(layout, key, data, 6);
        ntdb_layout_write(layout, free, &tap_log_attr, "run-03-coalesce.ntdb");
        /* NOMMAP is for lockcheck. */
-       ntdb = ntdb_open("run-03-coalesce.ntdb", NTDB_NOMMAP, O_RDWR, 0,
-                      &tap_log_attr);
+       ntdb = ntdb_open("run-03-coalesce.ntdb", NTDB_NOMMAP|MAYBE_NOSYNC,
+                        O_RDWR, 0, &tap_log_attr);
        ok1(free_record_length(ntdb, layout->elem[1].base.off) == 1024);
        ok1(free_record_length(ntdb, layout->elem[2].base.off) == 14488);
        ok1(ntdb_check(ntdb, NULL, NULL) == 0);
@@ -149,8 +149,8 @@ int main(int argc, char *argv[])
        ntdb_layout_add_free(layout, 13992, 0);
        ntdb_layout_write(layout, free, &tap_log_attr, "run-03-coalesce.ntdb");
        /* NOMMAP is for lockcheck. */
-       ntdb = ntdb_open("run-03-coalesce.ntdb", NTDB_NOMMAP, O_RDWR, 0,
-                      &tap_log_attr);
+       ntdb = ntdb_open("run-03-coalesce.ntdb", NTDB_NOMMAP|MAYBE_NOSYNC,
+                        O_RDWR, 0, &tap_log_attr);
        ok1(free_record_length(ntdb, layout->elem[1].base.off) == 1024);
        ok1(free_record_length(ntdb, layout->elem[2].base.off) == 512);
        ok1(free_record_length(ntdb, layout->elem[3].base.off) == 13992);
index 264932b988a84cde509acdfa56c6a84a3ef24fd4..9888f6e551db6511955b97cb6cc564afab73aa98 100644 (file)
@@ -30,8 +30,8 @@ int main(int argc, char *argv[])
                struct hash_info h;
                ntdb_off_t new_off, new_off2, off;
 
-               ntdb = ntdb_open("run-04-basichash.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &hattr);
+               ntdb = ntdb_open("run-04-basichash.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &hattr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
index dd5aa26d0d11f3500feef1d2e7f4d9d26e969dc9..e0de0d96e3a22a64458d82fe7be5c213738210ed 100644 (file)
@@ -27,15 +27,17 @@ int main(int argc, char *argv[])
        failtest_suppress = true;
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 11);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-05-readonly-open.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600,
-                              &seed_attr);
+               ntdb = ntdb_open("run-05-readonly-open.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600,
+                                &seed_attr);
                ok1(ntdb_store(ntdb, key, data, NTDB_INSERT) == 0);
                ntdb_close(ntdb);
 
                failtest_suppress = false;
-               ntdb = ntdb_open("run-05-readonly-open.ntdb", flags[i],
-                              O_RDONLY, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-05-readonly-open.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDONLY, 0600, &tap_log_attr);
                if (!ok1(ntdb))
                        break;
                ok1(tap_log_messages == msgs);
index 6e718bf61f5379276a5fa9e79ec89c5e4dbc53ec..3e5959a647ad57278c0b1a33b88784ce94e06bcb 100644 (file)
@@ -22,8 +22,9 @@ int main(int argc, char *argv[])
        failtest_suppress = true;
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 7 + 1);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-10-simple-store.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-10-simple-store.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                if (!ok1(ntdb))
                        break;
                /* Modify should fail. */
index 525cf46444c01832e26e9db24a1cd210dfda5d8f..9565ade930d7f906ff3fde32374980bd70fe739f 100644 (file)
@@ -22,8 +22,9 @@ int main(int argc, char *argv[])
        failtest_suppress = true;
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 8 + 1);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-11-simple-fetch.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-11-simple-fetch.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                if (ntdb) {
                        NTDB_DATA d = { NULL, 0 }; /* Bogus GCC warning */
index 604063704861ca02ea1e192b3cf4189ef6d571c4..8abc86dff9106f8a87e6c32b71f6a554d5f428f0 100644 (file)
@@ -23,8 +23,8 @@ int main(int argc, char *argv[])
        failtest_suppress = true;
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 3 + 1);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-12-check.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-12-check.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                ok1(ntdb_store(ntdb, key, data, NTDB_INSERT) == 0);
 
index a797944b53312a78a0095643ff7d4eb0116f029c..05fa594b6b52c97937d5f490092f2ee5d3774214 100644 (file)
@@ -41,8 +41,8 @@ int main(int argc, char *argv[])
 
        /* Using ntdb_store. */
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-append.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-append.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
@@ -73,8 +73,8 @@ int main(int argc, char *argv[])
        /* Using ntdb_append. */
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
                size_t prev_len = 0;
-               ntdb = ntdb_open("run-append.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-append.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
@@ -104,8 +104,8 @@ int main(int argc, char *argv[])
        }
 
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-append.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-append.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
index 1b69fe9a617711a82b7b5fe0ef9939c499ea27ee..d82b3edb3d30129d14fec308b10996e4f69c2d2f 100644 (file)
@@ -35,8 +35,9 @@ int main(int argc, char *argv[])
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
                NTDB_DATA d = { NULL, 0 }; /* Bogus GCC warning */
 
-               ntdb = ntdb_open("run-25-hashoverload.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &hattr);
+               ntdb = ntdb_open("run-25-hashoverload.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &hattr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
index cc9ea3fa3dd6f19da8ea9bb0d8b3f04a0b3b5627..bcf1c1f665567b461edcc65ee4d4ceb71c3a7019 100644 (file)
@@ -37,8 +37,9 @@ int main(int argc, char *argv[])
                k.dptr = (void *)&j;
                k.dsize = sizeof(j);
 
-               ntdb = ntdb_open("run-30-exhaust-before-expand.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-30-exhaust-before-expand.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
index 5b8099c4487d420638df4bef5be510758f6ebfa8..b3ee737794d2a5dc047f06017d66ab2cc207751d 100644 (file)
@@ -18,8 +18,8 @@ int main(int argc, char *argv[])
        failtest_exit_check = exit_check_log;
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 4);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-35-convert.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-35-convert.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                if (!ok1(ntdb))
                        failtest_exit(exit_status());
 
@@ -30,8 +30,8 @@ int main(int argc, char *argv[])
                }
                /* If we say NTDB_CONVERT, it must be converted */
                ntdb = ntdb_open("run-35-convert.ntdb",
-                              flags[i]|NTDB_CONVERT,
-                              O_RDWR, 0600, &tap_log_attr);
+                                flags[i]|NTDB_CONVERT|MAYBE_NOSYNC,
+                                O_RDWR, 0600, &tap_log_attr);
                if (flags[i] & NTDB_CONVERT) {
                        if (!ntdb)
                                failtest_exit(exit_status());
@@ -47,11 +47,11 @@ int main(int argc, char *argv[])
 
                /* If don't say NTDB_CONVERT, it *may* be converted */
                ntdb = ntdb_open("run-35-convert.ntdb",
-                              flags[i] & ~NTDB_CONVERT,
-                              O_RDWR, 0600, &tap_log_attr);
+                                (flags[i] & ~NTDB_CONVERT)|MAYBE_NOSYNC,
+                                O_RDWR, 0600, &tap_log_attr);
                if (!ntdb)
                        failtest_exit(exit_status());
-               ok1(ntdb_get_flags(ntdb) == flags[i]);
+               ok1(ntdb_get_flags(ntdb) == (flags[i]|MAYBE_NOSYNC));
                ntdb_close(ntdb);
        }
        failtest_exit(exit_status());
index f585aa13c818e05917d0e941b71ffff9d490f83c..1c8786ce2f4f667de7561d9ab5f44d5cbd67e477 100644 (file)
@@ -144,8 +144,8 @@ int main(int argc, char *argv[])
                     (flags[i] & NTDB_CONVERT) ? "CONVERT" : "DEFAULT",
                     (flags[i] & NTDB_NOMMAP) ? "no mmap" : "mmap");
                unlink(TEST_DBNAME);
-               ntdb = ntdb_open(TEST_DBNAME, flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open(TEST_DBNAME, flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
 
                opened = true;
index b6ce57590bb9361c9360e83bf64be30c98f25ab2..32f781e4a89585f63765f65e51adf8e4b0af0fb5 100644 (file)
@@ -167,8 +167,8 @@ static bool test_death(enum operation op, struct agent *agent,
 
 reset:
        unlink(TEST_DBNAME);
-       ntdb = ntdb_open(TEST_DBNAME, NTDB_NOMMAP,
-                      O_CREAT|O_TRUNC|O_RDWR, 0600, &tap_log_attr);
+       ntdb = ntdb_open(TEST_DBNAME, NTDB_NOMMAP|MAYBE_NOSYNC,
+                        O_CREAT|O_TRUNC|O_RDWR, 0600, &tap_log_attr);
        if (!ntdb) {
                diag("Failed opening NTDB: %s", strerror(errno));
                return false;
index 582deb22341f5b15e47622ed11b2f2a53436e821..552866f8bad5fe0584dfdb1799bd459d5362717a 100644 (file)
@@ -29,8 +29,8 @@ int main(int argc, char *argv[])
                struct ntdb_used_record rec;
                ntdb_off_t off;
 
-               ntdb = ntdb_open("run-64-bit-ntdb.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-64-bit-ntdb.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
index 4f8792569f8a6201437de9a6152405a359217d3e..5548aa4f7e0fbd53f2b27aecbb1ecf5036bda829 100644 (file)
@@ -50,8 +50,9 @@ int main(int argc, char *argv[])
                union ntdb_attribute attr;
 
                /* First open with no attributes. */
-               ntdb = ntdb_open("run-90-get-set-attributes.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, NULL);
+               ntdb = ntdb_open("run-90-get-set-attributes.ntdb",
+                                flags[i] |MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, NULL);
                ok1(ntdb);
 
                /* Get log on no attributes will fail */
@@ -111,9 +112,10 @@ int main(int argc, char *argv[])
                ok1(tap_log_messages == 0);
 
                /* Now open with all attributes. */
-               ntdb = ntdb_open("run-90-get-set-attributes.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600,
-                              &seed_attr);
+               ntdb = ntdb_open("run-90-get-set-attributes.ntdb",
+                                flags[i] | MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600,
+                                &seed_attr);
 
                ok1(ntdb);
 
index 6503214c062ae4a8932a519da04b78fe6b419119..dac9302fc6556c16ff6bc24143ad3ae92a10ea28 100644 (file)
@@ -96,8 +96,8 @@ int main(int argc, char *argv[])
        create_ntdb("run-capabilities.ntdb", 1, false, false, false, 0);
 
        failtest_suppress = false;
-       ntdb = ntdb_open("run-capabilities.ntdb", NTDB_DEFAULT, O_RDWR, 0,
-                      &tap_log_attr);
+       ntdb = ntdb_open("run-capabilities.ntdb", MAYBE_NOSYNC, O_RDWR, 0,
+                        &tap_log_attr);
        failtest_suppress = true;
        if (!ok1(ntdb))
                goto out;
@@ -112,8 +112,8 @@ int main(int argc, char *argv[])
                   2, false, false, false, 0);
 
        failtest_suppress = false;
-       ntdb = ntdb_open("run-capabilities.ntdb", NTDB_DEFAULT, O_RDWR, 0,
-                      &tap_log_attr);
+       ntdb = ntdb_open("run-capabilities.ntdb", MAYBE_NOSYNC, O_RDWR, 0,
+                        &tap_log_attr);
        failtest_suppress = true;
        if (!ok1(ntdb))
                goto out;
@@ -131,8 +131,8 @@ int main(int argc, char *argv[])
                   2, true, false, false, 0);
 
        failtest_suppress = false;
-       ntdb = ntdb_open("run-capabilities.ntdb", NTDB_DEFAULT, O_RDWR, 0,
-                      &tap_log_attr);
+       ntdb = ntdb_open("run-capabilities.ntdb", MAYBE_NOSYNC, O_RDWR, 0,
+                        &tap_log_attr);
        failtest_suppress = true;
        if (!ok1(ntdb))
                goto out;
@@ -154,8 +154,8 @@ int main(int argc, char *argv[])
                   2, false, true, false, 0);
 
        failtest_suppress = false;
-       ntdb = ntdb_open("run-capabilities.ntdb", NTDB_DEFAULT, O_RDWR, 0,
-                      &tap_log_attr);
+       ntdb = ntdb_open("run-capabilities.ntdb", MAYBE_NOSYNC, O_RDWR, 0,
+                        &tap_log_attr);
        failtest_suppress = true;
        /* We expect a message. */
        ok1(!ntdb);
@@ -167,8 +167,8 @@ int main(int argc, char *argv[])
 
        /* We can open it read-only though! */
        failtest_suppress = false;
-       ntdb = ntdb_open("run-capabilities.ntdb", NTDB_DEFAULT, O_RDONLY, 0,
-                      &tap_log_attr);
+       ntdb = ntdb_open("run-capabilities.ntdb", MAYBE_NOSYNC, O_RDONLY, 0,
+                        &tap_log_attr);
        failtest_suppress = true;
        if (!ok1(ntdb))
                goto out;
@@ -187,7 +187,7 @@ int main(int argc, char *argv[])
                   2, false, false, true, 0);
 
        failtest_suppress = false;
-       ntdb = ntdb_open("run-capabilities.ntdb", NTDB_DEFAULT, O_RDWR, 0,
+       ntdb = ntdb_open("run-capabilities.ntdb", MAYBE_NOSYNC, O_RDWR, 0,
                       &tap_log_attr);
        failtest_suppress = true;
        /* We expect a message. */
@@ -204,7 +204,7 @@ int main(int argc, char *argv[])
                   3, false, true, false, 0);
 
        failtest_suppress = false;
-       ntdb = ntdb_open("run-capabilities.ntdb", NTDB_DEFAULT, O_RDWR, 0,
+       ntdb = ntdb_open("run-capabilities.ntdb", MAYBE_NOSYNC, O_RDWR, 0,
                       &tap_log_attr);
        failtest_suppress = true;
        /* We expect a message. */
@@ -217,7 +217,7 @@ int main(int argc, char *argv[])
 
        /* We can open it read-only though! */
        failtest_suppress = false;
-       ntdb = ntdb_open("run-capabilities.ntdb", NTDB_DEFAULT, O_RDONLY, 0,
+       ntdb = ntdb_open("run-capabilities.ntdb", MAYBE_NOSYNC, O_RDONLY, 0,
                       &tap_log_attr);
        failtest_suppress = true;
        if (!ok1(ntdb))
@@ -242,7 +242,7 @@ int main(int argc, char *argv[])
                   0);
 
        failtest_suppress = false;
-       ntdb = ntdb_open("run-capabilities.ntdb", NTDB_DEFAULT, O_RDWR, 0,
+       ntdb = ntdb_open("run-capabilities.ntdb", MAYBE_NOSYNC, O_RDWR, 0,
                       &tap_log_attr);
        failtest_suppress = true;
        /* We expect a message. */
@@ -255,7 +255,7 @@ int main(int argc, char *argv[])
 
        /* We can open it read-only though! */
        failtest_suppress = false;
-       ntdb = ntdb_open("run-capabilities.ntdb", NTDB_DEFAULT, O_RDONLY, 0,
+       ntdb = ntdb_open("run-capabilities.ntdb", MAYBE_NOSYNC, O_RDONLY, 0,
                       &tap_log_attr);
        failtest_suppress = true;
        if (!ok1(ntdb))
index 71866a37c18e6337f3f557a59eee4ac7f35791b9..07c7129f8c9159c5d50c12cd2bf5d2943ebda30f 100644 (file)
@@ -16,8 +16,9 @@ int main(int argc, char *argv[])
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
                size_t size;
                NTDB_DATA k, d;
-               ntdb = ntdb_open("run-expand-in-transaction.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-expand-in-transaction.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
index 0d6b3bce76cee83c219a95c3764e48a845ec12e4..a332572deb58764f7e230298eeda65434e6bcbf7 100644 (file)
@@ -14,8 +14,8 @@ int main(int argc, char *argv[])
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 8 + 1);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
                uint64_t features;
-               ntdb = ntdb_open("run-features.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-features.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
@@ -36,8 +36,8 @@ int main(int argc, char *argv[])
                                      &features, sizeof(features)) == 0);
                ntdb_close(ntdb);
 
-               ntdb = ntdb_open("run-features.ntdb", flags[i], O_RDWR, 0,
-                              &tap_log_attr);
+               ntdb = ntdb_open("run-features.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR, 0, &tap_log_attr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
index c4bfb0e5cdb1d8de0b2ce3d91024d8fcb16b8c8c..5ec448c982278a167817dcb01798e07f1895c2a9 100644 (file)
@@ -33,8 +33,8 @@ int main(int argc, char *argv[])
                enum agent_return ret;
                struct ntdb_context *ntdb;
 
-               ntdb = ntdb_open(TEST_DBNAME, flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open(TEST_DBNAME, flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
                ok1(ntdb);
 
                ret = external_agent_operation(agent, OPEN, TEST_DBNAME);
index 0e963fc5b18910530e235ed0d6064a509263fab5..ee72c615379ccc1a8b649e38e117fae85df337b3 100644 (file)
@@ -39,7 +39,7 @@ int main(int argc, char *argv[])
 
        agent = prepare_external_agent();
 
-       ntdb = ntdb_open(filename, NTDB_DEFAULT,
+       ntdb = ntdb_open(filename, MAYBE_NOSYNC,
                       O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
 
        ok1(external_agent_operation(agent, OPEN, filename) == SUCCESS);
index 2514f728ac933af469c74fe40ee8a22c48a43d33..5d74dbc22e1e10405e5089a7cedd0d7a3f899105 100644 (file)
@@ -35,7 +35,7 @@ int main(int argc, char *argv[])
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
                struct ntdb_header hdr;
                int fd;
-               ntdb = ntdb_open("run-seed.ntdb", flags[i],
+               ntdb = ntdb_open("run-seed.ntdb", flags[i]|MAYBE_NOSYNC,
                               O_RDWR|O_CREAT|O_TRUNC, 0600, &attr);
                ok1(ntdb);
                if (!ntdb)
index f1a2d009195f5ce4925c97961caa3f9f0cf73fc5..11eac5d0f255e0161bb8b0e49dc3f0eb1d54fa0e 100644 (file)
@@ -38,12 +38,15 @@ int main(int argc, char *argv[])
 
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 8);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb0 = ntdb_open("run-ntdb_foreach0.ntdb", flags[i],
-                               O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
-               ntdb1 = ntdb_open("run-ntdb_foreach1.ntdb", flags[i],
-                               O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
-               ntdb = ntdb_open("run-ntdb_foreach2.ntdb", flags[i],
-                               O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb0 = ntdb_open("run-ntdb_foreach0.ntdb",
+                                 flags[i]|MAYBE_NOSYNC,
+                                 O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb1 = ntdb_open("run-ntdb_foreach1.ntdb",
+                                 flags[i]|MAYBE_NOSYNC,
+                                 O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
+               ntdb = ntdb_open("run-ntdb_foreach2.ntdb",
+                                flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &tap_log_attr);
 
                memset(found, 0, sizeof(found));
                ntdb_foreach(set_found, found);
@@ -64,8 +67,9 @@ int main(int argc, char *argv[])
                ntdb_foreach(set_found, found);
                ok1(found[0] && !found[1] && !found[2]);
 
-               ntdb1 = ntdb_open("run-ntdb_foreach1.ntdb", flags[i],
-                               O_RDWR, 0600, &tap_log_attr);
+               ntdb1 = ntdb_open("run-ntdb_foreach1.ntdb",
+                                 flags[i]|MAYBE_NOSYNC,
+                                 O_RDWR, 0600, &tap_log_attr);
                memset(found, 0, sizeof(found));
                ntdb_foreach(set_found, found);
                ok1(found[0] && found[1] && !found[2]);
index ed95f3360458d169336037b845e98e311885854a..a326b9c5d55dd90a1c5c621f7d0b3f79ff16ef88 100644 (file)
@@ -113,8 +113,8 @@ int main(int argc, char *argv[])
 
        plan_tests(sizeof(flags) / sizeof(flags[0]) * 32 + 1);
        for (i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) {
-               ntdb = ntdb_open("run-traverse.ntdb", flags[i],
-                              O_RDWR|O_CREAT|O_TRUNC, 0600, &hattr);
+               ntdb = ntdb_open("run-traverse.ntdb", flags[i]|MAYBE_NOSYNC,
+                                O_RDWR|O_CREAT|O_TRUNC, 0600, &hattr);
                ok1(ntdb);
                if (!ntdb)
                        continue;
index 9df64a16cb569b0be3905d618f2386ca5d8beb13..5363c32b4d4c65e11b080b6938ef76a4b9bbd466 100644 (file)
@@ -23,6 +23,7 @@
 */
 #include <stdio.h>
 #include <ccan/err/err.h>
+#include "no-fsync.h"
 
 #ifndef __location__
 #define __TAP_STRING_LINE1__(s)    #s