IBM Support

IT24244: The MQ Resource Adapter does not select JMS ManagedConnections for reuse after XA_RDONLY is returned from xa_prepare

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

  • A JMS application using the MQ JCA Resource Adapter (MQ-RA) is
    deployed into a JEE application server and participates in XA
    transactions.
    
    If the application enlists a JMS resource in a transaction but
    does not perform any actions that would result in a change of
    state (for example sending or consuming messages), then the
    application server pooled JMS ManagedConnection would not be
    selected for later reuse by the MQ-RA.
    

Local fix

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    This issue affects users of the IBM MQ JCA Resource Adapter who
    have applications deployed into JEE application server
    environments that participate in XA transactions.
    
    This issue does not affect WebSphere Application Server
    traditional.
    
    
    Platforms affected:
    MultiPlatform
    
    ****************************************************************
    PROBLEM DESCRIPTION:
    When XA_RDONLY was returned from an xa_prepare call for a JMS
    ManagedConnection enlisted in a transaction, the MQ JCA Resource
    Adapter (MQ-RA) did not reset the transaction state of said JMS
    ManagedConnection; it remained marked as active.  The result was
    that when the application server called
    ManagedConnectionFactory.matchManagedConnections(<a
    href="http://docs.oracle.com/javase/7/docs/api/java/util/Set.htm
    l?is-external=true">Set</a>, <a
    href="http://docs.oracle.com/javase/7/docs/api/javax/security/au
    th/Subject.html?is-external=true">Subject</a>, <a
    href="https://docs.oracle.com/javaee/7/api/javax/resource/spi/Co
    nnectionRequestInfo.html">ConnectionRequestInf</a>o) passing in
    a Set of pooled ManagedConnections, the MQ-RA would not have
    selected a ManagedConnection for reuse that was previously
    involved in a read-only transaction branch.
    

Problem conclusion

  • The MQ JCA Resource Adapter has been updated such that if the XA
    return code XA_RDONLY is returned from the queue manager in
    response to an xa_prepare call, the internal state of the JMS
    ManagedConnection that was involved in the transaction is marked
    as no longer participating in a transaction.  As such, it would
    become available for reuse should the other selection criteria
    in the application's request match those associated with the
    ManagedConnection.
    
    ---------------------------------------------------------------
    The fix is targeted for delivery in the following PTFs:
    
    Version    Maintenance Level
    v9.0 LTS   9.0.0.4
    
    The latest available maintenance can be obtained from
    'WebSphere MQ Recommended Fixes'
    http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006037
    
    If the maintenance level is not yet available information on
    its planned availability can be found in 'WebSphere MQ
    Planned Maintenance Release Dates'
    http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006309
    ---------------------------------------------------------------
    

Temporary fix

Comments

APAR Information

  • APAR number

    IT24244

  • Reported component name

    IBM MQ BASE M/P

  • Reported component ID

    5724H7261

  • Reported release

    900

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2018-02-28

  • Closed date

    2018-03-06

  • Last modified date

    2018-03-06

  • 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

    IBM MQ BASE M/P

  • Fixed component ID

    5724H7261

Applicable component levels

[{"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:
06 March 2018