Provided by: db5.1-util_5.1.25-11build1_amd64 bug

NAME

       db5.1_deadlock - Detect and abort deadlocks

SYNOPSIS

       db5.1_deadlock [-Vv] [-a e | m | n | o | W | w | y] [-h home] [-L file] [-t sec.usec]

DESCRIPTION

       The  db5.1_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 random 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 database and at least one of them is modifying it.

OPTIONS

       -a     When a deadlock is detected, abort the locker:

              m      with the most locks

              n      with the fewest locks

              o      with the oldest lock

              W      with the most write locks

              w      with the fewest write locks

              y      with the youngest lock

              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 db5.1_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 db5.1_deadlock utility exits gracefully.

       -t      Check the database environment every sec seconds plus usec microseconds 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, db5.1_deadlock will run once and exit.

       The db5.1_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, db5.1_deadlock should always be given the chance to detach from
       the environment and exit gracefully.  To cause db5.1_deadlock to release  all  environment
       resources and exit cleanly, send it an interrupt signal (SIGINT).

       The  db5.1_deadlock  utility  does  not  attempt  to  create the Berkeley DB shared memory
       regions if they do not already exist.  The application which creates the region should  be
       started  first, and then, once the region is created, the db5.1_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 example of using DB_ENV->lock_detect in a
       IEEE/ANSI Std 1003.1 (POSIX) environment.

       The db5.1_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.

AUTHORS

       Sleepycat  Software, Inc. This manual page was created based on the HTML documentation for
       db_deadlock from Sleepycat, by  Thijs  Kinkhorst  <thijs@kinkhorst.com>,  for  the  Debian
       system (but may be used by others).

                                         28 January 2005                        DB5.1_DEADLOCK(1)