hamsterdb Transaction Functions

Defines

#define HAM_TXN_READ_ONLY   1
#define HAM_TXN_FORCE_WRITE   1

Typedefs

typedef struct ham_txn_t ham_txn_t

Functions

HAM_EXPORT ham_status_t ham_txn_begin (ham_txn_t **txn, ham_db_t *db, ham_u32_t flags)
HAM_EXPORT ham_status_t ham_txn_commit (ham_txn_t *txn, ham_u32_t flags)
HAM_EXPORT ham_status_t ham_txn_abort (ham_txn_t *txn, ham_u32_t flags)

Define Documentation

#define HAM_TXN_FORCE_WRITE   1

Flag for ham_txn_commit

Definition at line 1058 of file hamsterdb.h.

#define HAM_TXN_READ_ONLY   1

Flag for ham_txn_begin

Definition at line 1035 of file hamsterdb.h.


Typedef Documentation

typedef struct ham_txn_t ham_txn_t

Definition at line 1006 of file hamsterdb.h.


Function Documentation

HAM_EXPORT ham_status_t ham_txn_abort ( ham_txn_t txn,
ham_u32_t  flags 
)

Aborts a Transaction

Remarks:
Note that the function will fail with HAM_CURSOR_STILL_OPEN if a Cursor was attached to this Transaction (with ham_cursor_create or ham_cursor_clone), and the Cursor was not closed.
Parameters:
txn Pointer to a Transaction structure
flags Optional flags for aborting the Transaction, combined with bitwise OR. Unused, set to 0.
Returns:
HAM_SUCCESS upon success
HAM_IO_ERROR if writing to the Database file or logfile failed
HAM_CURSOR_STILL_OPEN if there are Cursors attached to this Transaction

Referenced by ham::txn::abort().

HAM_EXPORT ham_status_t ham_txn_begin ( ham_txn_t **  txn,
ham_db_t db,
ham_u32_t  flags 
)

Begins a new Transaction

Parameters:
txn Pointer to a pointer of a Transaction structure
db A valid Database handle
flags Optional flags for beginning the Transaction, combined with bitwise OR. Possible flags are:

Note:
Note that as of hamsterdb 1.0.4, it is not possible to create multiple Transactions in parallel. This limitation will be removed in further versions.
Returns:
HAM_SUCCESS upon success
HAM_OUT_OF_MEMORY if memory allocation failed
HAM_LIMITS_REACHED if there's already an open Transaction (see above)

Referenced by ham::db::begin().

HAM_EXPORT ham_status_t ham_txn_commit ( ham_txn_t txn,
ham_u32_t  flags 
)

Commits a Transaction

Remarks:
Note that the function will fail with HAM_CURSOR_STILL_OPEN if a Cursor was attached to this Transaction (with ham_cursor_create or ham_cursor_clone), and the Cursor was not closed.
Parameters:
txn Pointer to a Transaction structure
flags Optional flags for committing the Transaction, combined with bitwise OR. Unused, set to 0.
Returns:
HAM_SUCCESS upon success
HAM_IO_ERROR if writing to the file failed
HAM_CURSOR_STILL_OPEN if there are Cursors attached to this Transaction

Referenced by ham::txn::commit().


Generated on Tue Mar 16 20:19:44 2010 for hamsterdb Embedded Database by  doxygen 1.6.1