IBM Support

PK96130: HUNG TRANSACTIONS USING DOCUMENT HANDLER WAITING ON DHLOCK. TASK ABENDS AKEC RUNAWAY TIGHT LOOP IN DFHDHPU

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • You are running CICS transaction server 3.1 and your application
    has issued an 'exec cics document create' command.  You notice
    transactions hang as well as other abend AKEC  which means:
    The kernel (KE) domain has detected runaway.
    Eventually, you cancel the region to resolve the problem.
    A dump from the AKEC showed a tight loop in module DFHDHPU
    between offsets x'68A' and x'6B4'.  Code is trying to chain
    through Document Control Records- or DCR's.  This chain is
    
    corrupt and it happens that we come to an address where the
    next pointer happens to point to itself- causing the loop.
    Looking at the Document Handler Anchor Block, (DHA) offset x'90'
    should point to the first Document Anchor block (DOA) for a task
    but instead points into the DHA.  So this forward pointer
    indicates there are no DOA's but we can tell from the backward
    pointer at offset x'94', that there are some.
    addtional symptoms:  DHA_FIRST_DOA DOA_FIRST_DCR DOA_LAST_DCR
    hang hung looping. Exception trace entry:
    *EXC* - RECOVERY_ENTERED - FUNCTION(CREATE_DOCUMENT)
            TEMPLATE_BUFFER(2C60EBD8 , 000000BA)
    KIXREVEPH
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All CICS users.                              *
    ****************************************************************
    * PROBLEM DESCRIPTION: An abend (AKEC) has occurred due to     *
    *                      a loop in DFHDHPU when issuing EXEC     *
    *                      CICS DOCUMENT CREATE.                   *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    Customer runs multiple transactions in CICS, some of
    which have issued the EXEC CICS DOCUMENT CREATE command and
    specified the TEMPLATE option.
    
    DFHDHDH handles the document create request.  It creates a
    document anchor block (DOA) and a document control record (DCR)
    for a new document.  DFHDHDH saves the document token in the
    DCR.  The DCR is stored in a chain anchored by the DOA.
    
    DFHDHDH then calls DFHDHPU to create a document template.
    Using the address of DOA, DFHDHPU locates the DCR chain.
    It loops through the chain to locate the DCR that holds the
    the current document token.  However the DCR chain is corrupted.
    DFHDHPU goes into an infinite loop.  A transaction eventually
    abends AKEC.
    
    The CICS recovery manager calls DFHDHRM to carry out backout
    processing.  Document handler is made threadsafe since CICS
    TS 2.3.  However DFHDHRM is not threadsafe while cleaning up
    document blocks such as DOA.  This allows another transaction
    to add a DOA at the same time by issuing EXEC CICS DOCUMENT
    CREATE.  This causes the AKEC and transactions to hang.
    

Problem conclusion

  • DFHDHRM has been changed to be threadsafe by obtaining
    the DHLOCK.
    
    The CICS Transaction Server for z/OS, Trace Entries Manual,
    Version 3 Release 1, SC34-6443-05, Chapter 6. Document
    handler trace points needs to be updated to add the following
    trace entries into Table 122. Document handler trace points.
    
    Point ID Module  Lvl Type                     Data
    DH 0309  DFHDHRM Exc Get exclusive lock error 1 DFHRMRO
                                                    parameter list
    
    DH 030A  DFHDHRM Exc Release exclusive lock   1 DFHRMRO
                         error                      parameter list
    
    DH 030B  DFHDHRM Exc Recovery release lock    1 DFHRMRO
                         error                      parameter list
    
    The CICS Transaction Server for z/OS, Trace Entries Manual,
    Version 3 Release 2, SC34-6828-02, Chapter 8. Document
    handler trace points needs to be updated to add the following
    trace entries into table 125. Document handler trace points.
    
    Point ID Module  Lvl Type                     Data
    DH 0309  DFHDHRM Exc Get exclusive lock error 1 DFHRMRO
                                                    parameter list
    
    DH 030A  DFHDHRM Exc Release exclusive lock   1 DFHRMRO
                         error                      parameter list
    
    DH 030B  DFHDHRM Exc Recovery release lock    1 DFHRMRO
                         error                      parameter list
    

Temporary fix

  •             *********
                * HIPER *
                *********
    FIX AVAILABLE BY PTF ONLY
    

Comments

APAR Information

  • APAR number

    PK96130

  • Reported component name

    CICSTS V3 Z/OS

  • Reported component ID

    5655M1500

  • Reported release

    400

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    YesHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2009-09-14

  • Closed date

    2009-11-25

  • Last modified date

    2009-12-02

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

    PM00786 UK52357 UK52358

Modules/Macros

  •    DESDHAN  DESDHRM  DESDHTRI DFHDHANC DFHDHAND
    DFHDHDCC DFHDHDCD DFHDHRM  DFHDHTRI
    

Publications Referenced
SC34644305SC34682802   

Fix information

  • Fixed component name

    CICSTS V3 Z/OS

  • Fixed component ID

    5655M1500

Applicable component levels

  • R400 PSY UK52357

       UP09/12/01 P F911

  • R500 PSY UK52358

       UP09/12/01 P F911

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSGMGV","label":"CICS Transaction Server"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"3.1","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"3.1","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
02 December 2009