IDMS

 View Only

Tech Tip: CA IDMS What Causes a Deadlock on the Space Management Lock on a Page?

  • 1.  Tech Tip: CA IDMS What Causes a Deadlock on the Space Management Lock on a Page?

    Broadcom Employee
    Posted Nov 07, 2017 03:21 PM

    Question:

    I am getting error messages like this:

    DC001000 Vnn Tnn T:nn taskid P:progname C:DEAD WAITING ON R:LTXNLOCK 00002008 nnnnnnnn

     

    The documentation for message DC01000 indicates the x'20' in the thirds byte is a space management lock and nnnnnnnn is a page number.

     

    What causes a deadlock on the space management lock on a page?

     

    Answer:

    When a program performs an update which causes the space available count on the page to change we put a lock on the space management for that page. The space available count is stored in the header of each database page in the SR1 system record which is pointed to by line index 0.

    Note, this is not a lock on the Space Management Page (SMP) in the area, IDMS does not place locks on SMP pages.

     

    These types of deadlocks can be caused by:

    • Programs updating records but not doing a COMIT often enough or not doing COMITs at all. 
    • Database design problems causing the same record to be updated concurrently by multiple tasks. 

     

    Adding  DEADLOCK_DETAILS=ON  to the SYSIDMS parameters in the CV will produce  more deadlock information when it occurs in message DC001001

    Analyse the pages you are getting deadlocks on and the record types that reside in them. 

    Then examine how the programs are using those records.

     

    Additional Information:

    Description of deadlock message DC001000 

    Additional deadlock details in message DC001001