Deadlocks can occur in IDMSBCF (batch) or OCF (online) when issuing many internal security statements on USER or GROUP entities such as CREATE, ALTER or DROP. The errors are as follows:
DC001000 Vnn Tnn T:nnnn IDMSBCF P:IDMSBCF C:DEAD WAITING ON R:LTXNLOCK nnnnnnnn nnnnnnnn
DC001002 Vnn Tnn T:nnnn IDMSBCF P:IDMSBCF C:DEAD DEADLOCKED ON R:LTXNLOCK nnnnnnnn nnnnnnnn
A 1729 error status will also be issued.
Release: All supported releases.
For each internal security statement processed, a security system run unit is started to check if the user has sufficient privileges to execute the statement. The security run unit accesses and places locks on the same area that the command facility is updating. If multiple security statements are executed in the same command facility session, a deadlock can occur.
The deadlocks can be prevented by coding the following as the first statement in the command facility session:
SET OPTIONS AUTOCOMMIT COMMAND;
This forces a "COMMIT WORK CONTINUE" to be issued after each statement. Locks will then be released at the end of each statement and thus avoiding the possibility of a deadlock situation arising.