X-Git-Url: http://git.ozlabs.org/?p=ccan;a=blobdiff_plain;f=ccan%2Ftdb2%2Ftest%2Frun-tdb1-die-during-transaction.c;h=f45fcedc7abf746136200291c13bce1ddb232894;hp=592f75731f264252c0f95aa267563282b0801d5e;hb=818ed29730b030ce79855fc35c212b51adff3180;hpb=22d0e0dc59fc9d7e0046fec6971ef478c2d604fd diff --git a/ccan/tdb2/test/run-tdb1-die-during-transaction.c b/ccan/tdb2/test/run-tdb1-die-during-transaction.c index 592f7573..f45fcedc 100644 --- a/ccan/tdb2/test/run-tdb1-die-during-transaction.c +++ b/ccan/tdb2/test/run-tdb1-die-during-transaction.c @@ -18,7 +18,7 @@ static int ftruncate_check(int fd, off_t length); #include #include #include "tdb1-external-agent.h" -#include "tdb1-logging.h" +#include "logging.h" #undef write #undef pwrite @@ -28,7 +28,7 @@ static int ftruncate_check(int fd, off_t length); static bool in_transaction; static int target, current; static jmp_buf jmpbuf; -#define TEST_DBNAME "run-die-during-transaction.tdb" +#define TEST_DBNAME "run-die-during-transaction.tdb1" #define KEY_STRING "helloworld" static void maybe_die(int fd) @@ -81,20 +81,25 @@ static int ftruncate_check(int fd, off_t length) static bool test_death(enum operation op, struct agent *agent) { - struct tdb1_context *tdb = NULL; + struct tdb_context *tdb = NULL; TDB_DATA key; enum agent_return ret; int needed_recovery = 0; + union tdb_attribute hsize; + + hsize.base.attr = TDB_ATTRIBUTE_TDB1_HASHSIZE; + hsize.base.next = &tap_log_attr; + hsize.tdb1_hashsize.hsize = 1024; current = target = 0; reset: unlink(TEST_DBNAME); - tdb = tdb1_open_ex(TEST_DBNAME, 1024, TDB_NOMMAP, - O_CREAT|O_TRUNC|O_RDWR, 0600, &taplogctx, NULL); + tdb = tdb_open(TEST_DBNAME, TDB_VERSION1|TDB_NOMMAP, + O_CREAT|O_TRUNC|O_RDWR, 0600, &hsize); if (setjmp(jmpbuf) != 0) { /* We're partway through. Simulate our death. */ - close(tdb->fd); + close(tdb->file->fd); forget_locking1(); in_transaction = false; @@ -139,7 +144,7 @@ reset: /* Suppress logging as this tries to use closed fd. */ suppress_logging = true; suppress_lockcheck1 = true; - tdb1_close(tdb); + tdb_close(tdb); suppress_logging = false; suppress_lockcheck1 = false; target++; @@ -150,7 +155,7 @@ reset: /* Put key for agent to fetch. */ key.dsize = strlen(KEY_STRING); key.dptr = (void *)KEY_STRING; - if (tdb1_store(tdb, key, key, TDB_INSERT) != 0) + if (tdb_store(tdb, key, key, TDB_INSERT) != TDB_SUCCESS) return false; /* This is the key we insert in transaction. */ @@ -165,20 +170,20 @@ reset: errx(1, "Agent failed find key: %s", agent_return_name1(ret)); in_transaction = true; - if (tdb1_transaction_start(tdb) != 0) + if (tdb_transaction_start(tdb) != TDB_SUCCESS) return false; - if (tdb1_store(tdb, key, key, TDB_INSERT) != 0) + if (tdb_store(tdb, key, key, TDB_INSERT) != TDB_SUCCESS) return false; - if (tdb1_transaction_commit(tdb) != 0) + if (tdb_transaction_commit(tdb) != TDB_SUCCESS) return false; in_transaction = false; /* We made it! */ diag("Completed %u runs", current); - tdb1_close(tdb); + tdb_close(tdb); ret = external_agent_operation1(agent, CLOSE, ""); if (ret != SUCCESS) { diag("Step %u close failed = %s", current,