A fix is available
APAR status
Closed as program error.
Error description
CHIN abends with ABN= 402-00000000,LOC=.........????????+EA468 but doesn't end (hang) when Dispatcher Process dies or is killed. After the dispatcher was abended, recovery was driven for the dispatcher TCB. The nature of the abend meant that a flag was set in the SDWA indicating that retry is not allowed, which resulted in the recovery routine for the dispatcher TCB percolating. This percolation resulted in the dispatcher termination ECB being posted, which released the CHINIT supervisor task. The CHINIT supervisor task detected that a dispatcher had terminated, and initiated CHINIT shutdown processing as designed. As part of shutdown processing, the supervisor task called CSQXSPRT to release all of the supervisor acquired resources. This involves scheduling dispatcher termination for each of the dispatchers by POSTing a dispatcher ECB. This fails when posting the already terminated dispatcher, resulting in a 402-00000000 abend for the supervisor task. The supervisor task recovery gets invoked and retries the processing once more, but this again results in a 402-00000000 abend. Since this was the second abend for the supervisor task, its recovery routine percolates before finishing the necessary cleanup required to allow for a clean shutdown. This results in the CHINIT jobstep task waiting for attached subtasks to complete, but since they were never awoken by the supervisor task, they will never finish. IBM MQ Development: z/OS Service team identified some flaws in the recovery processing for the dispatcher tasks. The problem could occur for small timing windows in some dispatcher failure scenarios. . Additional keywords and symptoms: ABEND402 ABENDS402 S402 S0402
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: All users of IBM MQ for z/OS Version 9 * * Release 2 Modification 0 and Release 3 * * Modification 0. * **************************************************************** * PROBLEM DESCRIPTION: An abend in a dispatcher TCB can cause * * the CHINIT to hang indefinitely while * * shutting down. * **************************************************************** When the dispatcher TCB abends with RETRY=NO, an ESTAE recovery routine percolates after issuing message CSQX112E. This results in an ECB being posted which is waited on by the supervisor. After this ECB is posted, the supervisor decides to terminate the CHINIT. As part of this process, a cleanup task is scheduled to run on every dispatcher without checking if all are active. When the supervisor tries to schedule the task on the terminated dispatcher, it abends 402-00000000. In this situation, the jobstep task still sees attached tasks so is left waiting indefinitely for an ECB.
Problem conclusion
Shutdown routines are only scheduled on dispatcher TCBs which are running. This means that when a dispatcher abends, the CHINIT shuts down correctly without hanging.
Temporary fix
Comments
APAR Information
APAR number
PH39154
Reported component name
IBM MQ Z/OS V9
Reported component ID
5655MQ900
Reported release
200
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
YesSpecatt / CST / Xsystem
Submitted date
2021-07-20
Closed date
2022-09-09
Last modified date
2022-10-07
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UI81039 UI82343
Modules/Macros
CSQXADPC CSQXDISP CSQXSPRT
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":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSYHRD","label":"IBM MQ"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"200","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
07 October 2022