IBM Support

PK36223: CICS MQ DB2 BACKOUT IS INCORRECT AFTER A TRANSACTION ABEND IN A MULTI-CICS ENVIRONMENT. CICS IS THE COORDINATOR

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When in a multi region environment using DPL to move request
    from a QOR to an AOR, that is updating DB2 tables, a problem can
    occur if the transaction running in the AOR ABENDs.
    CICS is designated as the coordinator in the 2 phase commit, the
    request from MQ (QOR region) commits forward, but the changes
    made in DB2 and CICS are backed out.
    ADDITIONAL KEYWORDS:  two-phase AD2R ABENDAD2R syncpoint mirror
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All CICS user accessing DB2 resources.       *
    ****************************************************************
    * PROBLEM DESCRIPTION: SYNCPOINT processing, after a handled   *
    *                      FORCEPURGE of a task within the DB2     *
    *                      interface, may lead to the inconsistent *
    *                      updating of resources.                  *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    A task updates a variety of CICS and external resources ( for
    example MQ ). For each resource updated its controlling manager
    will register an interest so it can take part in SYNCPOINT
    processing.
    
    A HANDLE-ABEND condition is active.
    
    The task then issues an SQL call which causes the DB2 Resource
    Manager Interface to be invoked. The request is passed to DB2
    for execution. By this point the transaction is now running
    under an OTE(L8) TCB.
    
    Upon receipt of the request DB2 determines that the target
    resource ( DB2 Table ) is in use so places the caller in an
    internal wait. Due to other factors the target table remains
    unavailable for some time.
    
    At some point it is decided that the task is to be terminated,
    by user intervention, due to its lack of response. This is
    accomplished by the use of CEMT S TAS() FORCEPURGE, the action
    of which is to abend the L8 TCB waiting within DB2. DB2, via EOT
    broadcast, detects this abend and performs rollback recovery on
    any of its resource that have been altered by previous DB2
    requests from this task.
    
    In parallel to the steps taken by DB2, CICS also takes steps to
    recover from the force purging of the task. This involves
    releasing controls blocks used in the management of the task's
    connection to DB2. It also removes the DB2 Resource manager's
    interest in SYNCPOINT processing for this task.
    
    Control returns to the application with and abend code AD2R.
    This abend code is HANDLED and application processing continues
    by issuing a EIP SYNCPOINT call. All interested resource
    managers are called to take part in commit processing, except
    DB2 as it reset its interest due to the earlier abend. As DB2
    takes no part it cannot vote NO to commit so the call is
    successful, meaning DB2 resources have not been updated where
    others have been committed.
    

Problem conclusion

  • The task abend processing in CICS module DFHD2EX1 has been
    amended. It will still release the Connection control block but
    it will now retain the DB2 Resource Managers interest in
    SYNCPOINT processing for the task. The lack of a connection
    control block will cause SYNCPOINT requests to fail with a
    "LOST_OUR_THREAD" abend but this will lead to the DB2 Resource
    Manager voting against the committing of any updates.
    

Temporary fix

  • FIX AVAILABLE BY PTF ONLY
    

Comments

APAR Information

  • APAR number

    PK36223

  • Reported component name

    CICSTS 3.1 Z/OS

  • Reported component ID

    5655M1500

  • Reported release

    400

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2006-12-14

  • Closed date

    2007-04-05

  • Last modified date

    2007-05-02

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

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

    UK23860

Modules/Macros

  •    DESD2EX1 DFHD2EX1
    

Fix information

  • Fixed component name

    CICSTS 3.1 Z/OS

  • Fixed component ID

    5655M1500

Applicable component levels

  • R400 PSY UK23860

       UP07/04/12 P F704

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 May 2007