RDBPROD: Using the OpenVMS System Field DLCKPRI to Predict Deadlock Victims
(Doc ID 74777.1)
Last updated on APRIL 18, 2022
Applies to:Oracle Rdb Server on OpenVMS - Version 7.0 and later
Oracle CODASYL DBMS - Version 7.0 and later
HP OpenVMS VAX
HP OpenVMS Alpha
HP OpenVMS Itanium
In the VMS Internals and Data StructuresOpenVMS documentation, there is a discussion of victim selection in deadlock situations. This article discusses a field in the Process Control Block (PCB) called PCB$L_DLCKPRI, which contains a deadlock priority for the running process. In the event of a deadlock, the process with the lower deadlock priority is chosen to be the victim. Normally, OpenVMS leaves this DLCKPRI field at zero, but it can be manipulated by applications and/or layered products.
Can you, as a programmer, manipulate the deadlock priorities so that you ensure that certain database jobs are never victimized? This would be helpful in the case of a long-running batch job which you did not want to interrupt, or in the case of high-availability interactive jobs that need to stay available.
To view full details, sign in with your My Oracle Support account.
Don't have a My Oracle Support account? Click to get started!