X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=libraries%2Flibmdb%2Fmtest2.c;h=a0e9914417784fc631282a47409f1b2893133aab;hb=28b8aaeb9670cad3d02d1be226ff5980590625f4;hp=7576027a987afd9b571f6bf48a03eaf0e890d4b2;hpb=01c2f7816f643ef0c7080f2cf7964f5d34d20efe;p=openldap diff --git a/libraries/libmdb/mtest2.c b/libraries/libmdb/mtest2.c index 7576027a98..a0e9914417 100644 --- a/libraries/libmdb/mtest2.c +++ b/libraries/libmdb/mtest2.c @@ -1,4 +1,4 @@ -/* mtest.c - memory-mapped database tester/toy */ +/* mtest2.c - memory-mapped database tester/toy */ /* * Copyright 2011 Howard Chu, Symas Corp. * All rights reserved. @@ -11,6 +11,9 @@ * top-level directory of the distribution or, alternatively, at * . */ + +/* Just like mtest.c, but using a subDB instead of the main DB */ + #define _XOPEN_SOURCE 500 /* srandom(), random() */ #include #include @@ -25,7 +28,7 @@ int main(int argc,char * argv[]) MDB_val key, data; MDB_txn *txn; MDB_stat mst; - MDB_cursor *cursor, *cur2; + MDB_cursor *cursor; int count; int *values; char sval[32]; @@ -39,11 +42,11 @@ int main(int argc,char * argv[]) values[i] = random()%1024; } - rc = mdbenv_create(&env); - rc = mdbenv_set_mapsize(env, 10485760); - rc = mdbenv_set_maxdbs(env, 4); - rc = mdbenv_open(env, "./testdb", MDB_FIXEDMAP|MDB_NOSYNC, 0664); - rc = mdb_txn_begin(env, 0, &txn); + rc = mdb_env_create(&env); + rc = mdb_env_set_mapsize(env, 10485760); + rc = mdb_env_set_maxdbs(env, 4); + rc = mdb_env_open(env, "./testdb", MDB_FIXEDMAP|MDB_NOSYNC, 0664); + rc = mdb_txn_begin(env, NULL, 0, &txn); rc = mdb_open(txn, "id1", MDB_CREATE, &dbi); key.mv_size = sizeof(int); @@ -59,9 +62,9 @@ int main(int argc,char * argv[]) } if (j) printf("%d duplicates skipped\n", j); rc = mdb_txn_commit(txn); - rc = mdbenv_stat(env, &mst); + rc = mdb_env_stat(env, &mst); - rc = mdb_txn_begin(env, 1, &txn); + rc = mdb_txn_begin(env, NULL, 1, &txn); rc = mdb_cursor_open(txn, dbi, &cursor); while ((rc = mdb_cursor_get(cursor, &key, &data, MDB_NEXT)) == 0) { printf("key: %p %.*s, data: %p %.*s\n", @@ -76,9 +79,9 @@ int main(int argc,char * argv[]) for (i= count - 1; i > -1; i-= (random()%5)) { j++; txn=NULL; - rc = mdb_txn_begin(env, 0, &txn); + rc = mdb_txn_begin(env, NULL, 0, &txn); sprintf(sval, "%03x ", values[i]); - rc = mdb_del(txn, dbi, &key, NULL, 0); + rc = mdb_del(txn, dbi, &key, NULL); if (rc) { j--; mdb_txn_abort(txn); @@ -89,8 +92,8 @@ int main(int argc,char * argv[]) free(values); printf("Deleted %d values\n", j); - rc = mdbenv_stat(env, &mst); - rc = mdb_txn_begin(env, 1, &txn); + rc = mdb_env_stat(env, &mst); + rc = mdb_txn_begin(env, NULL, 1, &txn); rc = mdb_cursor_open(txn, dbi, &cursor); printf("Cursor next\n"); while ((rc = mdb_cursor_get(cursor, &key, &data, MDB_NEXT)) == 0) { @@ -105,10 +108,10 @@ int main(int argc,char * argv[]) (int) data.mv_size, (char *) data.mv_data); } mdb_cursor_close(cursor); - mdb_close(txn, dbi); + mdb_close(env, dbi); mdb_txn_abort(txn); - mdbenv_close(env); + mdb_env_close(env); return 0; }