A fix is available
APAR status
Closed as program error.
Error description
The following abend and error message appeared in the CHIN joblog: IEA794I SVC DUMP HAS CAPTURED: DUMPID=nnn REQUESTED BY JOB (ssidCHIN) DUMP TITLE=ssid,ABN= 5C6-00E70056,C=MQ900.900.CHIN LOC=CSQXADPM.CSQXADPM +CSQX111E CSQXDISP User channel exit error, TCB=nnnnnnnn Reason code 00E70056 equates to CSQX_ABEND_BAD_HQM_EYECATCHER. A trace shows that a user Channel Message Exit successfully makes a series of MQOPEN, MQPUT, MQGET and MQCLOSE requests for a particular channel instance before the problem occurs. The abend occurs when MQ attempts to validate the Hconn value provided on the current MQ API call. The Hconn value passed was different from the one used on prior successful calls. Since the earlier API calls, made as part of the same exit invocation, had the correct Hconn value, this would suggest that the Hconn value was changed in the exit application code mid way through its execution. While the issue of the bad Hconn must be resolved in the user exit code, MQ should handle this situation better than it currently does. Returning MQRC_HCONN_ERROR 2018 x'000007e2' to the user exit would be a more reasonable response if it will not cause other unintended consequences.
Local fix
Correct the user exit so that it will pass the correct Hconn
Problem summary
**************************************************************** * USERS AFFECTED: All users of IBM MQ for z/OS Version 9 * * Release 0 Modification 0 and Release 1 * * Modification 0. * **************************************************************** * PROBLEM DESCRIPTION: If an invalid Hconn is supplied to an * * MQAPI call in a channel exit, then an * * abend will occur in the chinit. This * * abend will be one of 5C6-00E70054, * * 5C6-00E70055 or 5C6-00E70056. * * * * Additionally, issuing an MQCONNX call * * in a channel exit without setting the * * Hconn to MQHC_UNUSABLE_HCONN will cause * * a 5C6-00E70054 abend in the chinit. * **************************************************************** Although this problem ultimately arises from an error in the user's channel exit, we should handle an invalid Hconn better. When receiving a Hconn from an application, internal checks are made to validate the Hconn. If one of these checks fails on a Hconn received from a channel exit, then an abend will be issued to the chinit. This will in turn bring down the associated channel.
Problem conclusion
The code has been changed to better handle an invalid Hconn. This results in an invalid Hconn returning MQRC_HCONN_ERROR to the MQAPI call instead of abending.
Temporary fix
Comments
APAR Information
APAR number
PH21813
Reported component name
IBM MQ Z/OS V9
Reported component ID
5655MQ900
Reported release
000
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2020-02-05
Closed date
2020-05-28
Last modified date
2020-09-01
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
010PC2 UI69752 UI69753
Modules/Macros
CSQXADPM
Fix information
Fixed component name
IBM MQ Z/OS V9
Fixed component ID
5655MQ900
Applicable component levels
Fix is available
Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.
[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSYHRD","label":"IBM MQ"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.0","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
03 September 2020