A fix is available
APAR status
Closed as program error.
Error description
This is very similar to APAR PI65997. There exists a window where the IPCONN can be closed when one of its ISSS blocks is "in use". When the ISSS is just on the input queue waiting to be processed, it doesn't meet any of the criteria for CIST to determine it is in use. This means the IPCONN can be released while the ISSS is waiting for CISR to handle it. In this instance CISR is massively delayed processing the previous input queue. Data arrives for an ISSS so it is put on the input queue. CISR is currently busy. A connection error is detected on the other ISSS, which queues the IPCONN to CISE for error processing. CISE attaches CIST to terminate the IPCONN. CIST cleans up the IPCONN, closes the sockets and sets the state to released. Nothing happens to the ISSS block and it remains on the input queue. A new capex arrives and the IPCONN gets put back inservice. A brand new async receive is issued for the ISSS. CISR picks up the input queue and starts processing it. Data arrives for the ISSS and it gets put in the input queue. CISR processes the old instance of the ISSS on the previous input queue. A new async receive gets issued, which completes immediately. The ISSS gets put on the input queue again. It is now on there twice, which will cause the queue to break when CISR eventually processes the new input queue. Everything after the duplicate entry will be lost and get stuck with the flags isss_cisr_active and isss_on_input_q set on. The flag isss_cisr_active being on causes the IPCONN to get stuck in freeing state. This APAR will prevent the CIST task from releasing an IPCONN that has an ISSS block with isss_on_input_q still set. CIST already checks for isss_on_error_q. This problem only occurs when there is a lot of IPIC work going on and a very overloaded and CPU constrained CICS region to allow the IPCONN to be released and re-acquired all while CISR was processing the previous input queue. This problem would be unlikely to be seen in a CICS-CICS setup because CICS doesn't provide an auto-reconnect capability. Additional Symptom(s) Search Keyword(s): KIXREVSCB Case TS008239688 MSGDFHIS1015 DFHIS1015 Ins Fre free state IPIC unusable stuck
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: All CICS users. * **************************************************************** * PROBLEM DESCRIPTION: An IPCONN remains stuck in a freeing * * state after a connection error. * **************************************************************** A CICS region has several acquired IPCONNs. Data arrives for one of the IPCONNs and its ISSS block is put onto the IPIC input queue. Before the CISR task is able to process the input queue a connection error is detected for this IPCONN. The connection error is handled and the IPCONN is released even though one of its ISSS blocks is still on the input queue. The IPCONN is quickly re-acquired and more data arrives. The same ISSS is put onto the input queue a second time. At this stage the input queue is corrupted. Any IPCONNs with ISSS blocks appearing further down the queue will become unresponsive. Attempting to free those IPCONNs will cause them to be stuck in FREEing state.
Problem conclusion
CICS has been changed so that an IPCONN will not be released if one of its ISSS blocks is still on the IPIC input queue. This prevents the corruption of the IPIC input queue caused by the same ISSS block being added to the queue a second time.
Temporary fix
Comments
APAR Information
APAR number
PH48057
Reported component name
CICS TS Z/OS V5
Reported component ID
5655Y0400
Reported release
100
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2022-07-18
Closed date
2022-11-15
Last modified date
2022-12-01
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
PH49581 UI83296 UI83297 UI83298
Modules/Macros
DFHISCO
Fix information
Fixed component name
CICS TS Z/OS V5
Fixed component ID
5655Y0400
Applicable component levels
R100 PSY UI83296
UP22/11/19 P F211
R200 PSY UI83297
UP22/11/17 P F211
R300 PSY UI83298
UP22/11/17 P F211
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":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSGMGV","label":"CICS Transaction Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"5.4","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]
Document Information
Modified date:
01 December 2022