A fix is available
APAR status
Closed as program error.
Error description
MSTR goes down intermittently due to abend 0C4-11 in IGVCPOOL. The error relates to MQ attempting to free storage in a z/OS cell pool. From the registers at the time of the abend, the z/OS function receives the 0C4 because the value it is using for the cellpool ID is invalid (in each case, the error value is x80000000). The Cell pool ID is passed by the calling MQ module, so from the z/OS perspective it looks like MQ has passed an invalid value for the cell pool ID. In the dump, however, the control blocks that MQ would have used to establish the cellpool ID all look valid, and the ID value is correct, so it is not clear where the bad value came from or how it ended up being used. The dump gotten is not captured at the time of the original 0C4, so analysis of the contents is subject to the possibility that the content may have changed between the 0C4 and the dump being captured. The issue occurs in logic which is performing I/O to pagesets. This means it is likely to be related to the profile of work being done. The qmgr seeing the error was being used for QREP processing. This drives a particularly heavy usage pattern on individual queues, and also tends to drive read-ahead of pages from the pageset. The problem appears to be highly intermittent, it is likely to be a timing issue and the current evidence suggests that the necessary conditions are more likely to occur with the QREP workload. An alternative implementation could be written which would not require cell pools for the problem code. This logic change was made in the MQ V9.1 version, which removes the failing cell pool call and avoids the possibility of this abend occurring. This APAR was raised to investigate the feasibility of back-porting the V9.1 logic to V9.0.
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: All users of IBM MQ for z/OS Version 9 * * Release 0 Modification 0 * **************************************************************** * PROBLEM DESCRIPTION: Abend 0C4 occurs in cpool processing * * (IGVCPOOL) due to an invalid cpoolid * * being passed by CSQPMTRM. * * The abend is followed by abnormal * * queue manager termination 6C6. * **************************************************************** When an IO request to read a page due to readahead processing completes, and the buffer is above the bar, and pageable, CSQPMTRM calls IARV64 to unfix the buffer. As part of this processing storage is obtained from and freed to a CPOOL. An error in locating the cpool id can result in an invalid id being passed to CPOOL under certain timing conditions, resulting in the reported abend.
Problem conclusion
CSQPMTRM is changed to locate the cpool id correctly.
Temporary fix
Comments
APAR Information
APAR number
PH19716
Reported component name
IBM MQ Z/OS V9
Reported component ID
5655MQ900
Reported release
000
Status
CLOSED PER
PE
NoPE
HIPER
YesHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2019-11-27
Closed date
2020-01-03
Last modified date
2020-02-04
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UI67227
Modules/Macros
CSQPMTRM
Fix information
Fixed component name
IBM MQ Z/OS V9
Fixed component ID
5655MQ900
Applicable component levels
R000 PSY UI67227
UP20/01/25 P F001 ¢
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"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.0","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
04 February 2020