Berkeley DB Reference Guide:

Locking Subsystem

Configuring locking

The DB_ENV->set_lk_detect method specifies that the deadlock detector
should be run whenever a lock is about to block. 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 option argument to the DB_ENV->set_lk_detect method
indicates which lock requests should be rejected.

In general, when applications are not specifying lock and transaction
timeout values, the DB_LOCK_DEFAULT option is probably the
correct first choice, and other options should only be selected based
on evidence that they improve transaction throughput. If an application
has long-running transactions, DB_LOCK_YOUNGEST will guarantee
that transactions eventually complete, but it may do so at the expense
of a large number of lock request rejections (and therefore, transaction
aborts).