Configuring Locking

The DBENV→set_lk_detect function specifies that the deadlock detector should be run whenever a lock blocks. This option provides for rapid detection of deadlocks at the expense of potentially frequent invocations of the deadlock detector. On a fast processor with a highly contentious application where response time is critical, this is a good choice. An argument to the DBENV→set_lk_detect function indicates which transaction to abort when a deadlock is detected. It can take on any one of the following values:

  • DB_LOCK_YOUNGEST Abort the most recently started transaction.

  • DB_LOCK_OLDEST Abort the longest-lived transaction.

  • DB_LOCK_RANDOM Abort whatever transaction the deadlock detector happens to find first.

  • DB_LOCK_DEFAULT ...

Get Berkeley DB now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.