# DbEnv.set_tx_recover

`

###

    import com.sleepycat.db.*;

    public interface DbTxnRecover
    {
    	public abstract int
    	    tx_recover(DbEnv dbenv, Dbt log_rec, DbLsn lsn, int op);
    }
    public class DbEnv
    {
    	public void set_tx_recover(DbTxnRecover tx_recover)
    		throws DbException;
    	...
    }

# Description

Set the application's method to be called during transaction abort and recovery. This method must return 0 on success and either errno or a value outside of the Berkeley DB error name space on failure. It takes four arguments:

dbenv
  A Berkeley DB environment.

log_rec
  A log record.

lsn
  A log sequence number.

op
  One of the following values:

  Db.DB_TXN_BACKWARD_ROLL
    The log is being read backward to determine which transactions have been committed and to abort those operations that were not, undo the operation described by the log record.

  Db.DB_TXN_FORWARD_ROLL
    The log is being played forward, redo the operation described by the log record.

  Db.DB_TXN_ABORT
    The log is being read backwards during a transaction abort, undo the operation described by the log record.

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 throws an exception that encapsulates a non-zero error value on failure.

# 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_timestamp, DbTxn.abort, DbEnv.txn_begin, DbEnv.txn_checkpoint, DbTxn.commit, DbTxn.id, DbTxn.prepare and DbEnv.txn_stat.`

Copyright Sleepycat Software