Troubleshooting data for temporary storage (TS) server problems
CICS® MustGather for temporary storage (TS) server problems
If you receive a message, see DFHXQnnnn messages for the explanation and user response. For more information, see CICS messages. If a user task waits on a resource type of TSSHARED, TSPOOL, or TSQUEUE, see Investigating temporary storage waits.
Gather the following diagnostic information before contacting the CICS support team to troubleshoot your temporary storage server problems.
- Required data:
-
- The CICS message log and the MVS™ system log (SYSLOG).
- The SYSPRINT log for the TS server. Although most of the same information is also visible in the MVS system log, the SYSPRINT log might contain statistics and some other informational messages, for example, the options that are used during start-up.
- The CICS internal trace that is included in the MVS system dump when tracing is active. Ensure that the internal trace table size is big enough to contain sufficient data for diagnosis; for example, you can use a table size of 20480K. When possible, turn on level 1 tracing for all CICS components and level 1-2 for the TS component. For more information, see Using trace for CICS problem determination on z/OS®.
- If you receive a message and can re-create the problem, take a SLIP dump of the CICS region or regions. Also, take the TS list structure when you
receive the message. Set the SLIP by using the following MVS
command, and then re-create the problem as follows. For more information, see Using dumps
for CICS problem determination on z/OS.
SLIP SET,MSGID=DFHXQnnnn,ACTION=SVCD, STRLIST=(STRNAME=DFHXQLS_poolname,ACC=NOLIM, (LISTNUM=ALL,ADJ=DIRECTIO,EDATA=UNSERIALIZE)), JOBLIST=(ts-server,XCFAS,cicsjob), SDATA=(RGN,XESDATA,ALLNUC,CSA,LSQA,PSA,SQA,SUM,SWA,TRT, COUPLE,WLM,GRSQ,LPA),MATCHLIM=1,ID=CIC1,END
where:
- DFHXQnnnn
- Specifies the message you receive.
- poolname
- Specifies your TS pool.
- ts-server
- Specifies your TS server.
- cicsjob
- Specifies the job name for your CICS region.
If the pool structure becomes unexpectedly full, a dump with the
STRLIST=(...(...))
helps determine what fills up the pool. If you only want to dump the pool, see Dumping a shared temporary storage list structure for more instructions. - If there is a wait or hang, take an MVS system dump of the
CICS region or regions. Also, take the TS list structure when
you notice the hang or wait. For more information, see Using dumps
for CICS problem determination on z/OS.
Use the following MVS command followed by the reply to capture
the dump of the list structure:
DUMP COMM=(dumpname) R yy,JOBNAME=(ts-server,XCFAS,cicsjob), STRLIST=(STRNAME=DFHXQLS_poolname,ACC=NOLIM, (LISTNUM=ALL,ADJ=DIRECTIO,EDATA=UNSERIALIZE)), SDATA=(RGN,XESDATA,ALLNUC,CSA,LSQA,PSA,SQA,SUM,SWA,TRT, COUPLE,WLM,GRSQ,LPA),END
where:
- dumpname
- Specifies the name you want to give the dump.
- yy
- Specifies the reply identifier.
- ts-server
- Specifies your TS server.
- cicsjob
- Specifies the job name for your CICS region.
- poolname
- Specifies your TS pool.
A dump of the pool is rarely needed by IBM, so you can exclude
STRLIST=(...(...))
from the dump command if you are concerned about dump size.
- Optional data:
-
If you receive a wait and can reproduce the problem, consider using the CICS auxiliary trace or the GTF trace with the MVS system dump. The MVS system dump alone is unlikely to show anything about system activity in the period that leads up to the wait because the trace table probably wraps before you have a chance to respond. But the CICS auxiliary trace and the GTF trace can provide you with enough trace. For more information, see Using trace for CICS problem determination on z/OS.