APAR status
Closed as program error.
Error description
An MQ client application is running under control of CICS or TUXEDO as XA transaction manager (TM) in a global transaction. The user code in the application disconnects by calling MQDISC. Shortly afterwards, the TM library code make calls to MQ XA functions on the same thread. MQ rejects these calls, with return codes such as -5 (XAER_INVAL) and -6 (XAER_PROTO). But this is indeed a valid sequence, so no error should be returned by MQ. Separately, another problem has been seen if the XA application calls MQCONN and MQOPEN after calling MQDISC. This is a valid sequence, but the MQ code did not create the 2nd connection properly, so the MQOPEN call failed with reason code 2009 MQRC_CONNECTION_BROKEN. Separately, it is possible during shutdown of connections to see the queue manager end pre-emptively, after writing FDCs with these identifiers: AT077013/atxAssociationRemove rc=arcE_XAER_PROTO AT080004/atxAssociationRemoveAll rc=arcE_XAER_PROTO ZL043105/zlaMainThread rc=STOP_ALL These problems might also be seen when ending client-connected channels from applications hosted in JEE application servers such as WebSphere Application Server. These problems were introduced as a side effect in APAR IT08918.
Local fix
Problem summary
**************************************************************** USERS AFFECTED: Users running a client application (connected to MQ over TCP/IP) under control of external XA TM software (for example, WebSphere Application Server, CICS or TUXEDO) in a global transaction. The fix applies to the server side, not the client side. The problem only exists in server-side code levels that include IT08918 (beginning 7.5.0.6, 8.0.0.4, 9.0.0.0). Platforms affected: MultiPlatform **************************************************************** PROBLEM DESCRIPTION: When the SVRCONN channel program received the MQDISC request from the client, it called xa_close on the application's behalf. This caused later XA calls to be rejected because the XA context had been closed down. In certain states it was also possible for the queue manager's cleanup activity to attempt operations in an order that broke some internal rules, and caused the pre-emptive ending of the queue manager.
Problem conclusion
The MQ product code has been corrected, so when the SVRCONN channel program receives the MQDISC request from the client, it does not call xa_close on the application's behalf. --------------------------------------------------------------- The fix is targeted for delivery in the following PTFs: Version Maintenance Level v7.5 7.5.0.8 v8.0 8.0.0.6 v9.0 CD 9.0.2 v9.0 LTS 9.0.0.1 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
IT16767
Reported component name
WMQ BASE MULTIP
Reported component ID
5724H7251
Reported release
800
Status
CLOSED PER
PE
NoPE
HIPER
YesHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2016-08-25
Closed date
2016-12-19
Last modified date
2017-12-04
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
PI73983
Fix information
Fixed component name
WMQ BASE MULTIP
Fixed component ID
5724H7251
Applicable component levels
R800 PSY
UP
[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSYHRD","label":"IBM MQ"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.0.0.0","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
04 December 2017