Enables or disables carry-over lock optimization. Carry-over
locks are enabled by default.
While attached to the database, a process can have some active
locks (locks attached to the database) and some carry-over
locks (locks requested in earlier transactions that have not
been demoted). If a transaction needs a lock it has currently
marked as carry-over, it can reuse the lock by changing it to an
active lock. The same lock can go from active to carry-over to
active multiple times without paying the cost of lock request and
demotion. This results in a substantial reduction in the number
of lock requests if a process accesses the same set of areas
repeatedly.
As part of the carry-over lock optimization, a NOWAIT transaction
requests, acquires, and holds a NOWAIT lock. This signals other
processes accessing the database that a NOWAIT transaction exists
and causes Oracle Rdb to release all carry-over locks. If NOWAIT
transactions are noticeably slow in executing, you can specify
CARRY OVER LOCKS ARE DISABLED with the CHANGE DATABASE or DEFINE
DATABASE statement.
This feature is available as an online database modification.