2017 (07E1) (RC2017): MQRC_HANDLE_NOT_AVAILABLE
Explanation
An MQOPEN, MQPUT1 or MQSUB call was issued, but the maximum number of open handles allowed for the current task has already been reached. Be aware that when a distribution list is specified on the MQOPEN or MQPUT1 call, each queue in the distribution list uses one handle.- On z/OS, "taskážż means a CICS task, a z/OS task, or an IMS-dependent region.
In addition, the MQSUB call allocates two handles when we do not provide an object handle on input.
Completion code
MQCC_FAILED
Programmer response
Check whether the application is issuing MQOPEN calls without corresponding MQCLOSE calls. If it is, modify the application to issue the MQCLOSE call for each open object as soon as that object is no longer needed.
Also check whether the application is specifying a distribution list containing a large number of queues that are consuming all of the available handles. If it is, increase the maximum number of handles that the task can use, or reduce the size of the distribution list. The maximum number of open handles that a task can use is given by the MaxHandles queue manager attribute.
Parent topic: API reason codes