IBM Support

PH25633: WEBSPHERE APPLICATION SERVER THROWS JAVAX.TRANSACTION.HEURISTICMIXEDEXCEPTION DURING JMS PROVIDER

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • When a third-party JMS Provider is failed over, an application
    running in WebSphere under a JTA transaction with a single
    resource throws an HeuristicHazardException and the following
    messages are logged in the SystemOut.log
    
    J2CA0024E: Method commit, within transaction branch ID
    {XidImpl: formatId(57415344), gtrid_length(36), bqual_
    length(40),
    data(...)} of resource pool
    
    JMS$XXXCF$JMSManagedConnection@0, caught
    javax.resource.spi.ResourceAdapterInternalException:
    Failed to commit transaction at
    com.ibm.ejs.jms.JMSCMUtils.mapToResourceException(JMSCMUtils.jav
    a:195)
    at
    com.ibm.ejs.jms.JMSManagedSession$JMSLocalTransaction.commit(JMS
    ManagedSession.java:1054)
    at
    com.ibm.ejs.j2c.LocalTransactionWrapper.commit(LocalTransactio
    nWrapper.java:283)
    at
    com.ibm.tx.jta.impl.OnePhaseResourceImpl.commit_one_phase(OnePha
    seResourceImpl.java:145)
    at
    com.ibm.tx.jta.impl.RegisteredResources.flowCommitOnePhase(Regis
    teredResources.java:2398)
    at com.ibm.tx.jta.impl.TransactionImpl.commitXAReso
    urces(TransactionImpl.java:1797)
    at
    com.ibm.ws.tx.jta.TransactionImpl.stage1CommitProcessing(Transac
    tionImpl.java:626)
    at
    com.ibm.tx.jta.impl.TransactionImpl.processCommit(TransactionImp
    l.java:1040)
    at
    com.ibm.tx.jta.impl.TransactionImpl.commit(TransactionImpl.java:
    974)
    Caused by:
    javax.jms.TransactionRolledBackException: Commit failed due to
    prior failure or after fault-tolerant switch, transaction
    rolled back
    at com.tibco.tibjms.Tibjmsx.buildException(Tibjmsx.java:754)
    at
    com.tibco.tibjms.TibjmsxSessionImp._confirmTransacted(TibjmsxSes
    sionImp.java:3404)
    at
    com.tibco.tibjms.TibjmsxSessionImp._confirm(TibjmsxSessionImp.ja
    va:3810)
    at
    com.tibco.tibjms.TibjmsxSessionImp._commit(TibjmsxSessionImp.jav
    a:3039)
    at
    com.tibco.tibjms.TibjmsxSessionImp.commit(TibjmsxSessionImp.java
    :5202)
    
    
    WTRN0075W:
    Transaction XXXear#XXXejb.jar#XXXBeanListener 00000171E542106700
    00000123456789ABCDE
    F0123456789ABCDEF0123456789ABCDEF0123456789A
    BCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789A
    0000001 received a heuristic exception when committing a
    resource. com.ibm.ws.Transaction.JTA.HeuristicHazardException
    at com.ibm.tx.jta.impl.RegisteredResources.flowCommitOnePhase(Re
    gisteredResources.java:2616)
    at
    com.ibm.tx.jta.impl.TransactionImpl.commitXAResources(Transactio
    nImpl.java:1797)
    at
    com.ibm.ws.tx.jta.TransactionImpl.stage1CommitProcessing(Transac
    tionImpl.java:626)
    at
    com.ibm.tx.jta.impl.TransactionImpl.processCommit(TransactionImp
    l.java:1040)
    Caused by:
    javax.jms.TransactionRolledBackException: Commit failed due to
    prior failure or after fault-tolerant switch, transaction
    rolled back
    

Local fix

  • Force session close within the application code.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:  WebSphere Application Server users of       *
    *                  JMS                                         *
    ****************************************************************
    * PROBLEM DESCRIPTION: HeuristicMixedException thrown when a   *
    *                      JTA transaction with a single           *
    *                      JMS XAResource fails to commit the      *
    *                      resource.                               *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    A JMS Provider was used in a JTA Transaction with no other
    resources.  When such a transaction commits, it will use a
    one-phase commit.  If the JMS Provider throws a
    javax.jms.TransactionRolledBackException, for example if the
    JMS Provider failed over before the commit, this results in a
    javax.transaction.HeuristicMixedException on the commit.
    This behaviour is expected by default, however if the JVM
    system property
    "com.ibm.ws.j2c.XARBonLocalTransactionException" is set to
    true, as per APAR PM81105, then a
    javax.transaction.RollbackException is expected.  Due to
    incorrect handling of the TransactionRolledBackException a
    HeuristicMixedException was thrown on the commit regardless of
    the system property value.
    

Problem conclusion

  • The handling of the TransactionRolledBackException by the
    messaging component was modified so that the correct exception
    was thrown.
    
    
    The fix for this APAR is targeted for inclusion in fix pack
    9.0.5.7 For more information, see 'Recommended Updates for
    WebSphere Application Server':
    https://www.ibm.com/support/pages/node/715553
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH25633

  • Reported component name

    WEBS APP SERV N

  • Reported component ID

    5724H8800

  • Reported release

    900

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2020-05-20

  • Closed date

    2021-01-13

  • Last modified date

    2021-01-13

  • 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

[{"Line of Business":{"code":"LOB10","label":"Data and AI"},"Business Unit":{"code":"BU029","label":"Software"},"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"900"}]

Document Information

Modified date:
14 January 2021