db_deadlock(1) BSD General Commands Manual db_deadlock(1)
NAME
db_deadlock
SYNOPSIS
db_deadlock [-Vv] [-a e | m | n | o | w | y] [-h home] [-L file] [-t sec.usec]
DESCRIPTION
The db_deadlock utility traverses the database environment lock region, and aborts a lock request each time it detects a deadlock or a lock request that has timed out. By default, in the case of a deadlock, a ran- dom lock request is chosen to be aborted. This utility should be run as a background daemon, or the underlying Berkeley DB deadlock detection interfaces should be called in some other way, whenever there are multiple threads or processes accessing a data- base and at least one of them is modifying it. The options are as follows: -a When a deadlock is detected, abort the locker: m with the greatest number of locks n with the fewest number of locks o with the oldest locker ID w with the fewest number of write locks y with the youngest locker ID When lock or transaction timeouts have been specified: e abort any lock request that has timed out -h Specify a home directory for the database environment; by default, the current working directory is used. -L Log the execution of the db_deadlock utility to the specified file in the following format, where ### is the process ID, and the date is the time the utility was started. db_deadlock: ### Wed Jun 15 01:23:45 EDT 1995 This file will be removed if the db_deadlock utility exits gracefully. -t Check the database environment every sec seconds plus usec microsec- onds to see if a process has been forced to wait for a lock; if one has, review the database environment lock structures. -V Write the library version number to the standard output, and exit. -v Run in verbose mode, generating messages each time the detector runs. If the -t option is not specified, db_deadlock will run once and exit. The db_deadlock utility uses a Berkeley DB environment (as described for the -h option, the environment variable DB_HOME, or because the utility was run in a directory containing a Berkeley DB environment). In order to avoid environment corruption when using a Berkeley DB environment, db_deadlock should always be given the chance to detach from the environ- ment and exit gracefully. To cause db_deadlock to release all environment resources and exit cleanly, send it an interrupt signal (SIGINT). The db_deadlock utility does not attempt to create the Berkeley DB shared memory regions if they do not already exist. The application which cre- ates the region should be started first, and then, once the region is created, the db_deadlock utility should be started. The DB_ENV->lock_detect method is the underlying method used by the db_deadlock utility. See the db_deadlock utility source code for an exam- ple of using DB_ENV->lock_detect in a IEEE/ANSI Std 1003.1 (POSIX) envi- ronment. The db_deadlock utility exits 0 on success, and >0 if an error occurs.
ENVIRONMENT
DB_HOME If the -h option is not specified and the environment variable DB_HOME is set, it is used as the path of the database home, as described in DB_ENV->open.
SEE ALSO
db_archive(1), db_checkpoint(1), db_dump(1), db_load(1), db_printlog(1), db_recover(1), db_stat(1), db_upgrade(1), db_verify(1) Darwin December 3, 2003 Darwin
Mac OS X 10.6Server - Generated Wed Apr 14 06:05:00 CDT 2010