DbEnv::set_tx_recover
|

|
#include <db_cxx.h>
int DbEnv::set_tx_recover(int (*)(DbEnv *dbenv,
Dbt *log_rec, DbLsn *lsnp, int redo, void *info));
Description
Set the method that is called by DbTxn::abort during transaction
abort.
This method must return the value of errno on failure and 0
on success. It takes four arguments:
- log_rec
- A log record.
- lsnp
- A pointer to a log sequence number.
- redo
- An integer value that is set to one of the following values:
- DB_TXN_BACKWARD_ROLL
- The log is being read backward to determine which transactions have been
committed and which transactions were not (and should therefore be aborted
during recovery).
- DB_TXN_FORWARD_ROLL
- The log is being played forward, any transaction ids encountered that
have not been entered into the list referenced by
info should be ignored.
- DB_TXN_OPENFILES
- The log is being read to open all the files required to perform recovery.
- DB_TXN_REDO
- Redo the operation described by the log record.
- DB_TXN_UNDO
- Undo the operation described by the log record.
- info
- An opaque pointer used to reference the list of transaction IDs encountered
during recovery.
If no recover function is specified, the default is that only Berkeley DB access
method operations are transaction protected, and the default recover function
will be used.
The DbEnv::set_tx_recover interface may only be used to configure Berkeley DB before
the DbEnv::open interface is called.
The DbEnv::set_tx_recover
method either returns a non-zero error value or throws an exception that
encapsulates a non-zero error value on failure, and returns 0 on success.
Errors
- EINVAL
- An invalid flag value or parameter was specified.
Called after DbEnv::open was called.
Classes
DbEnv, DbTxn
See Also
DbEnv::set_tx_max,
DbEnv::set_tx_recover,
DbTxn::abort,
DbEnv::txn_begin,
DbEnv::txn_checkpoint,
DbTxn::commit,
DbTxn::id,
DbTxn::prepare
and
DbEnv::txn_stat.
Copyright Sleepycat Software