Esempio n. 1
0
int db_txn_commit(DB_txn *const txn) {
	int rc = mdberr(lsmdb_autocompact((LSMDB_txn *)txn));
	if(rc < 0) {
		lsmdb_txn_abort((LSMDB_txn *)txn);
		return rc;
	}
	return mdberr(lsmdb_txn_commit((LSMDB_txn *)txn));
}
Esempio n. 2
0
static void test_read(LSMDB_env *const env) {
	LSMDB_txn *txn;
	chk( lsmdb_txn_begin(env, NULL, MDB_RDONLY, &txn) );
	LSMDB_cursor *cursor;
	chk( lsmdb_cursor_open(txn, &cursor) );

	for(int i = 0; i < WRITES; ++i) {
		MDB_val key, data;
		chk( lsmdb_cursor_next(cursor, &key, &data, +1) );

		assert(KEY_SIZE == key.mv_size);
		chkkey(key.mv_data);
		assert(DATA_SIZE == data.mv_size);
	}

	lsmdb_txn_abort(txn);
}
Esempio n. 3
0
void db_txn_abort(DB_txn *const txn) {
	lsmdb_txn_abort((LSMDB_txn *)txn);
}