APAR status
Closed as program error.
Error description
A CLUSRCVR channel has opened a clustered queue in bind-not-fixed mode, is receiving messages from a remote queue manager, and is putting messages to that queue without error. This queue is the only known instance of the queue name within the clusters known to the queue manager hosting the CLUSRCVR channel. The administrator changes the queue to remove it from the cluster. They do this by altering the queue's CLUSTER attribute to blank. At that point the queue manager fails the CLUSRCVR channel's MQPUT call with reason code MQRC_CLUSTER_RESOLUTION_ERROR 2189. Any further messages intended for that queue are sent to the Dead Letter Queue, if defined. The dead letter header contains the reason code 2189. In fact, the MQPUT should fail it with MQRC_OBJECT_CHANGED 2041, and the channel should have continued to re-attempt the put to the same queue in its new state.
Local fix
Problem summary
**************************************************************** USERS AFFECTED: For this situation to exist, the queue must have been in a cluster when it was first opened, must be removed from the cluster, must be the only queue of that name in any of the clusters known to the queue manager where the CLUSRCVR is running, and the message must have been put using a bind-not-fixed object handle within the originating user application. Platforms affected: MultiPlatform **************************************************************** PROBLEM DESCRIPTION: In the case described, MQ was attempting to find a cluster queue of the right name, but none existed, because the administrator had effectively removed the only instance of the queue of that name, as far as clustering name lookup mechanisms are concerned. Internally the name lookup error was unknown-object-name but this was converted to a reason code of MQRC_CLUSTER_RESOLUTION_ERROR 2189. In fact, it should have been converted to MQRC_OBJECT_CHANGED 2041.
Problem conclusion
The MQ product code has been corrected so that, in this scenario, the reason code returned through the MQPUT is MQRC_OBJECT_CHANGED 2041. When the correct reason code is returned through the MQPUT that the CLUSRCVR channel program has performed, the channel code is already coded correctly to recognise this condition, and it closes that queue object handle and opens a new one. The original putter application soon sees failures in its own MQPUT calls, so does not continue to put messages forever. But for those that are inflight while the change to the queue is being transmitted throughout the cluster, these now make it safely to their intended queue, as long as the fix is applied to the queue manager hosting the queue (that is, the queue manager where the CLUSRCVR channel is running). --------------------------------------------------------------- The fix is targeted for delivery in the following PTFs: Version Maintenance Level v9.1 CD 9.1.3 v9.1 LTS 9.1.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
IT29451
Reported component name
IBM MQ BASE MP
Reported component ID
5724H7271
Reported release
910
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2019-06-14
Closed date
2019-07-12
Last modified date
2019-07-12
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
PH14429
Fix information
Fixed component name
IBM MQ BASE MP
Fixed component ID
5724H7271
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":"910","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
12 July 2019