Berkeley DB: DbEnv.lock_detect
Description: Berkeley DB: An embedded database programmatic toolkit.
Keywords: embedded,database,programmatic,toolkit,b+tree,btree,hash,hashing,transaction,transactions,locking,logging,access method,access methods,java,C,C++

# DbEnv.lock_detect |

`

###

    import com.sleepycat.db.*;

    public int lock_detect(int flags, int atype)
    	throws DbException;

# Description

The DbEnv.lock_detect method runs one iteration of the deadlock detector. The deadlock detector traverses the lock table, and for each deadlock it finds, marks one of the participating transactions for abort.

The flags value must be set to 0 or by bitwise inclusively OR'ing together one or more of the following values.

Db.DB_LOCK_CONFLICT
  Only run the deadlock detector if a lock conflict has occurred since the last time that the deadlock detector was run.

The atype parameter specifies which transaction to abort in the case of deadlock. It must be set to one of possible arguments listed for the DbEnv.set_lk_detect interface.

The DbEnv.lock_detect method returns the number of transactions aborted.

The DbEnv.lock_detect method throws an exception that encapsulates a non-zero error value on failure.

# Errors

The DbEnv.lock_detect method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods. If a catastrophic error has occurred, the DbEnv.lock_detect method may fail and throw a DbRunRecoveryException, in which case all subsequent Berkeley DB calls will fail in the same way.

### Classes

DbEnv, DbLock

# See Also

DbEnv.set_lk_conflicts, DbEnv.set_lk_detect, DbEnv.set_lk_max_locks, DbEnv.set_lk_max_lockers, DbEnv.set_lk_max_objects, DbEnv.set_lk_max, DbEnv.lock_detect, DbEnv.lock_get, DbEnv.lock_id, DbLock.put and DbEnv.lock_stat.`

Copyright Sleepycat Software