IBM Support

PM70624: WEBSPHERE APPLICATION SERVER ACTING AS TRANSACTION MANAGER GETS RM_FAIL XA RETURN CODE (-4) FOR XA_PREPARE CALL.

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • WebSphere MQ  (WMQ) V7 jms client receives return code 2009
    MQRC_CONNECTION_BROKEN causing the client connection and its
    MQSession to be closed.  At the time the MQSession was involved
    in an XA transaction so when the WebSphere Application Server
    (WAS) acting as Transaction Manager attempted to call XA prepare
    on the MQSession the RM_FAIL XA return code (-4) was returned to
    the Transaction Manager by the client because the connection was
    already closed.
    
    The transaction became stranded after the Transaction Manager to
    Resource Manager connectivity failure, and WMQ waits until a
    log-nearly-full condition before it attempts to roll the
    transaction back.
    The message received under the transaction is locked until that
    transaction rolls back. This may occur many hours later when the
    MQ transaction logs become full and it rolls back any incomplete
    transactions.
    
    SystemOut log may show
    javax.transaction.xa.XAException: The method 'xa_prepare' has
    failed with errorCode '-4'.
    
    Queue Manager logs may show AMQ7469:Transactions rolled back to
    release log space.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  All users of IBM WebSphere Application      *
    *                  Server                                      *
    ****************************************************************
    * PROBLEM DESCRIPTION: After the transaction manager receives  *
    *                      an XAER_RMFAIL from a xa_prepare()      *
    *                      request to a resource, attempts to      *
    *                      rollback the resource subsequently      *
    *                      also fail.                              *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    When an XAER_RMFAIL is returned in response to a prepare
    request, the transaction manager will attempt to issue all
    subsequent xa operations on the same failed connection to the
    XA resource. The XA specification dictates that all XA
    operations subsequent to a XA_RMFAIL should only be made
    following a reconnection (issuing a xa_open operation) to the
    failed XA resource.  However, in this particular scenario, no
    attempt was made to reconnect to the failed resource.
    

Problem conclusion

Temporary fix

Comments

APAR Information

  • APAR number

    PM70624

  • Reported component name

    WEBS APP SERV N

  • Reported component ID

    5724H8800

  • Reported release

    610

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2012-08-09

  • Closed date

    2012-09-27

  • Last modified date

    2013-06-24

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

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

Fix information

  • Fixed component name

    WEBS APP SERV N

  • Fixed component ID

    5724H8800

Applicable component levels

  • R61A PSY

       UP

  • R61H PSY

       UP

  • R61I PSY

       UP

  • R61P PSY

       UP

  • R61S PSY

       UP

  • R61W PSY

       UP

  • R61Z PSY

       UP

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"610","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
29 October 2021