APAR status
Closed as program error.
Error description
An MQ .Net application is not getting reply from an MQ API call, and the application thread appears blocked. Failure Data Capture (FDC) files are generated by client application around the time when the application threads are waiting for a reply, similar to the following: | Probe Id :- DN155001 | | Application Name :- MQM | | Component :- MQFAP.MQBACK(MQHCONN,out MQLONG,out MQLONG) | | Process :- 00000111 | | Thread :- 0000012 | | Arith1 :- 149 | | Comment2 :- Unexpected flow received during MQBACK | | | +--------------------------------------------------------------- -------- ------+ MQM Function Stack MQDestination.Get(MQMessage,MQGetMessageOptions) MQDestination.Get(MQMessage,MQGetMessageOptions,int) MQFAP.MQBACK(MQHCONN,out MQLONG,out MQLONG) ManagedCommonServices.FFST(String,string,string,uint,uint,MQULON G,MQULONG,ushort) The FDC need not be cut always in MQFAP.MQBACK call, it can be generated from any MQAPI calls. Similarly application may not get reply for any MQAPI calls, it need not be MQGET always. Output from FFST summary:- DN>56001 MQFAP.MQDISC(Phconn,out int,out int) rrcE_COMMUNICATIONS_ERROR OK AMQ9213: A communications error for Unexpected flow received during MQDISC call occurred. DN>61001 MQFAP.MQCLOSE(Hconn,Phobj,int,out int,ou rrcE_COMMUNICATIONS_ERROR OK AMQ9213: A communications error for Unexpected flow received during MQCLOSE occurred. DN148001 MQFAP.MQPUT(MQHCONN,MQLONG,ref MQMessage rrcE_MQPUT_FAILED OK AMQ9511: Messages cannot be put to a queue. DN155001 MQFAP.MQBACK(MQHCONN,out MQLONG,out MQLO rrcE_COMMUNICATIONS_ERROR OK AMQ9213: A communications error for Unexpected flow received during MQBACK occurred.
Local fix
Problem summary
**************************************************************** USERS AFFECTED: Users of Managed .Net client application Platforms affected: Windows **************************************************************** PROBLEM DESCRIPTION: A coding error within the synchronization logic of the MQ managed .NET client meant that a timing window existed where it was possible to deliver a response from the queue manager to a different thread, when multiple threads were perfoming MQ API calls concurrently. As the response was unexpected by the thread it was delivered to, this caused the FDC to be generated. The thread for which the response was intended continued to wait.
Problem conclusion
MQ .Net Managed client logic has been updated to correct this synchronization. --------------------------------------------------------------- The fix is targeted for delivery in the following PTFs: Version Maintenance Level v7.1 7.1.0.8 v7.5 7.5.0.7 v8.0 8.0.0.6 v9.0 CD 9.0.1 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
IT14568
Reported component name
WMQ BASE MULTIP
Reported component ID
5724H7251
Reported release
800
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2016-04-01
Closed date
2016-06-03
Last modified date
2017-06-01
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
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:
01 June 2017