MDB_txn *txn;
MDB_stat mst;
MDB_cursor *cursor, *cur2;
+ MDB_cursor_op op;
int count;
int *values;
char sval[32] = "";
}
printf("Restarting cursor in txn\n");
- E(mdb_cursor_get(cur2, &key, &data, MDB_FIRST));
- printf("key: %p %.*s, data: %p %.*s\n",
- key.mv_data, (int) key.mv_size, (char *) key.mv_data,
- data.mv_data, (int) data.mv_size, (char *) data.mv_data);
- for (i=0; i<32; i++) {
- if (RES(MDB_NOTFOUND, mdb_cursor_get(cur2, &key, &data, MDB_NEXT)))
+ for (op=MDB_FIRST, i=0; i<=32; op=MDB_NEXT, i++) {
+ if (RES(MDB_NOTFOUND, mdb_cursor_get(cur2, &key, &data, op)))
break;
printf("key: %p %.*s, data: %p %.*s\n",
key.mv_data, (int) key.mv_size, (char *) key.mv_data,
printf("Restarting cursor outside txn\n");
E(mdb_txn_begin(env, NULL, 0, &txn));
E(mdb_cursor_open(txn, dbi, &cursor));
- E(mdb_cursor_get(cursor, &key, &data, MDB_FIRST));
- printf("key: %p %.*s, data: %p %.*s\n",
- key.mv_data, (int) key.mv_size, (char *) key.mv_data,
- data.mv_data, (int) data.mv_size, (char *) data.mv_data);
- for (i=0; i<32; i++) {
- if (RES(MDB_NOTFOUND, mdb_cursor_get(cursor, &key, &data, MDB_NEXT)))
+ for (op=MDB_FIRST, i=0; i<=32; op=MDB_NEXT, i++) {
+ if (RES(MDB_NOTFOUND, mdb_cursor_get(cursor, &key, &data, op)))
break;
printf("key: %p %.*s, data: %p %.*s\n",
key.mv_data, (int) key.mv_size, (char *) key.mv_data,