IBM Support

PI93964: MQRC_LOCAL_UOW_CONFLICT MAY OCCUR WHEN AN RRS-ENABLED MQ CONNECTION PERFORMS AN OUT-OF-SYNCPOINT PUT TO A TOPIC

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Liberty Batch, when using batchJmsEvents, can result in a
    compcode 2, reason 2352 from MQ in the Liberty log:
    
     CWWKY0211W: The batch runtime cannot publish event to topic
     null for
                object {"jobName":"",
                   "instanceId":[id],
                   "appName":"[name]",
                   "submitter":"[id]",
                   "batchStatus":"STARTING",
                   "jobXMLName":"[name]",
                   "instanceState":"SUBMITTED",
                   "lastUpdatedTime":"[date/time]"}.
                The exception is com.ibm.mq.MQException:
                JMSCMQ0001: WebSphere MQ call failed with
                            compcode '2' ('MQCC_FAILED')
                            reason '2352'
                            ('MQRC_LOCAL_UOW_CONFLICT').
    
    The application publishes a message outside of a global
    transaction using a bindings-mode Connection Factory (CF). It
    goes on to start a series of global trans on the same thread.
    One tran, which involves updating a data base generates a
    CWLIB0110W warning. Another tran that is doing a send to a
    queue using the same binding-mode CF fails with CWLIB0101E due
    to XAER_RMERR:
    
     CWLIB0101E: System service ATR4BEG failed with return code 731
    
    
    The problem occurs when an RRS-enabled MQ connection performs
    an out-of-syncpoint put to a topic.
    
    MQ uses an interim unit of recovery during publish processing.
    This causes the MQ context to express interest in the current
    RRS transaction while processing the publish. For
    out-of-syncpoint publishes, the MQ unit of recovery is only
    required for the duration of the API call and may be committed
    when the call is complete. However, the RRS context interest is
    not removed.
    
    If the same context is later used on a different thread, MQ
    will detect that it already has interest in a different
    thread's UR. The request is failed with either 2351
    (MQRC_GLOBAL_UOW_CONFLICT) or 2352 (MQRC_LOCAL_UOW_CONFLICT).
    
    
    Additional Symptom(s) Search Keyword(s):
    2352  0x00000930 00000930 930  MQRC_LOCAL_UOW_CONFLICT
    BatchEventsPublisherImpl
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All users of IBM MQ for z/OS Version 9       *
    *                 Release 0 Modification 0 and Release 1       *
    *                 Modification 0.                              *
    ****************************************************************
    * PROBLEM DESCRIPTION: MQRC_LOCAL_UOW_CONFLICT may occur when  *
    *                      an rrs-enabled MQ connection performs   *
    *                      an out-of-syncpoint put to a topic.     *
    ****************************************************************
    JMS is being used in a Liberty batch environment, and the
    application receives MQRC_LOCAL_UOW_CONFLICT (2352).
    The problem occurs when an RRS-enabled MQ connection performs an
    out-of-syncpoint put to a topic. MQ uses an interim unit of
    recovery UR during publish processing. This causes the MQ
    context to express interest in the current RRS transaction while
    processing the publish. For out-of-syncpoint publishes, the MQ
    unit of recovery is only required for the duration of the API
    call and may be committed when the call is complete. However,
    the RRS context interest is not removed.
    If the same context is later used on a different thread, MQ will
    detect that it already has interest in a different thread's UR.
    The request is failed with either 2351
    (MQRC_GLOBAL_UOW_CONFLICT) or 2352 (MQRC_LOCAL_UOW_CONFLICT).
    

Problem conclusion

  • CSQIRRSI has been updated for the reported problem so that the
    thread does not hold an interest in the RRS UOW after the
    associated unit of recovery has been committed.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI93964

  • Reported component name

    IBM MQ Z/OS V9

  • Reported component ID

    5655MQ900

  • Reported release

    000

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2018-02-19

  • Closed date

    2018-12-20

  • Last modified date

    2019-02-02

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

    PI88390

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

    UI60389 UI60390

Modules/Macros

  • CSQIRRSI CSQIRSAV
    

Fix information

  • Fixed component name

    IBM MQ Z/OS V9

  • Fixed component ID

    5655MQ900

Applicable component levels

  • R000 PSY UI60389

       UP19/01/26 P F901

  • R100 PSY UI60390

       UP19/01/26 P F901

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":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSYHRD","label":"IBM MQ"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.0","Edition":"","Line of Business":{"code":"LOB36","label":"IBM Automation"}}]

Document Information

Modified date:
02 February 2019