Why am I experiencing 30 second response times after putting CICS Transaction Server for z/OS (CICS TS) with IMS V13 or IMS V12 into production? I have some regions that are running the same release of CICS without any slowdowns. The CICS regions that are not experiencing the performance problems are running against IMS V13 without PI29195 installed or IMS V12 without PI29194 installed.
Answer by DebbieMcLaughlin (958) | Jul 18, 2016 at 02:17 PM
In this case, a dump was captured at the time of the slowdown. The Dispatcher domain (formatted with IPCS using VERBX DFHPDxxx 'DS=1' where xxx is your release level of CICS like 690 for CICS TS 5.2) showed tasks suspended in dispatch pool waits - waiting on an open TCB:
NUMBER OF TASKS SUSPENDED AWAITING POOL TCBS = 3
The Parameter manager domain formatted with command VERBX DFHPDxxx 'PA=1' showed:
MAXOPENTCBs=5
A setting for MAXOPENTCBS of 5 is very low given that this region has MAXTASKS set to 99.
CICS Transaction Server for z/OS V4.2 and later supports Open Transaction Environment (OTE). This can cause the tasks doing IMS work to run on an L8 open TCB. The open transaction environment (OTE) is supported in IMS V12 with PTF UI26492 for APAR PI29194 applied and in IMS V13 with PTF UI26491 for APAR PI29195 applied. This is documented in the CICS documentation under Exploiting Open Transaction Environment (OTE).
Since IMS work can run on the open TCB when the maintenance is applied, it can become necessary to increase the system initialization table (SIT) parameter MAXOPENTCBS to avoid having transactions wait on an open TCB which leads to the higher response times.
The regions running CICS TS V5.2 that did not have the maintenance applied did not experience the slowdown because the open TCBs were not being used. The QR TCB would be used in this case, and it does not rely on the MAXOPENTCBS parameter.
A preferred solution is to allow CICS to set this parameter. When migrating to V5.2 or above we recommend that you not set MAXOPENTCBS and let CICS set it automatically to a default value. CICS will calculate a value based on your MXT setting. To revert to allowing CICS to set this parameter automatically after specifying it explicitly, you will have to reinitialize both the local and global catalogs.
Debbie McLaughlin
IBM CICS Level2 Support
Resolving DBCTL DLSUSPND waits in CICS by finding tasks that own DBCTL threads 1 Answer
CICS regions reach MAX TASK and reports show waits for DLI I/O after upgrading to z/OS 2.2 1 Answer
DFHDB8241 PSB schedule unsuccessful UIB return codes 0801 when using CDBM 1 Answer
CPU usage high in CICS region with tasks in JVMTHRED waits 1 Answer
Opening service requests for CICS TS performance problems 1 Answer