Diagnostic setup recommendations for IMS

When you set up your IMS system for diagnostics, consider not only the IMS diagnostic settings, but also the z/OS® systems settings that impact IMS diagnostics.

FMTO option

Specify the FMTO=D IMS control region EXEC parameter value.

  • This parameter produces a system dump (SDUMP) for terminating and non-terminating errors, specifically, Db2 for z/OS and dynamic-allocation abends. Non-terminating errors include:
    • IMS dynamic allocation failures.
    • Some external subsystem attach facility (ESAF) failures.
A SYSMDUMP, SYSABEND, or SYSUDUMP is produced only if SDUMP fails.
Note: Make sure that you use FMTO=D so that you get a system dump if IMS abends. Do not rely on SYSMDUMP, SYSABEND, or SYSUDUMP as your primary source of diagnostic information. These dumps only dump a single address space, and sometimes they do not provide adequate storage for complete diagnosis of abends.

SYSMDUMP DD

  • Specify the SYSMDUMP DD statement in JCL of the following IMS regions:
    • IMS CTL (control)
    • IMS DLI (data language interface)/SAS (separate address space)
    • IMS DBRC (Database Recovery Control)
  • The SYSMDUMP specification is used by IMS if SDUMP processing fails.
  • You should specify the following dump options in the SYS1.PARMLIB(IEADMR00) member to ensure that adequate areas of z/OS storage are dumped to diagnose the problem under most circumstances:
    SDATA=(CSA,LSQA,RGN,SQA,SUM,SWA,TRT)
  • Specify the SYSUDUMP DD statement in JCL of IMS Dependent Regions. The SYSUDUMP specification is used by IMS dependent regions for failure events.
  • You should specify the following dump options in the z/OS SYS1.PARMLIB(IEADMP00) member to ensure that adequate areas of z/OS storage are dumped:
    SDATA=(CB,ERR,SUM) PDATA=(JPA,LPA,PSW,REGS,SA,SPLS) 

Table traces

For type-1 table traces:

  • Set the IMS Dispatcher, Scheduler, DL/I, and Lock traces on. Perform one of the following:
    • The DL/I and LOCK traces are set on by default when IMS initializes.
    • To set the DISP and SCHED traces on, specify the following options in the DFSVSMxx member of the IMS.PROCLIB data set:
      DISP=ON, SCHD=ON
    • Use the IMS /TRA SET ON TABLE nnnn command, where nnnn is alternately = DISP, SCHD, DLI, or LOCK.
  • You should turn on the LATCH trace only in non-production environments.

    The LATCH trace can carry a large amount of overhead, so it is not recommended as a default in a production environment.

Recommendation: Use the IMS LATCH trace for all test systems. Your system might experience measurable performance reduction if the LATCH trace is active in production. To set the LATCH trace on, specify LATC=ON for the LATCH trace in the DFSVSMxx member of the IMS.PROCLIB data set.

External trace environment

  • IMS external tracing allows for type-1 IMS trace table output to be placed on IMS trace data sets rather than on the IMS OLDS (online data set) when:
    • The DISP=OUT option is used in the DFSVSMxx member of the IMS.PROCLIB data set.
    • The LOG option is used with the IMS TRACE commands.
  • Using external trace can increase IMS system throughput.
  • External trace data sets are allocated in the following order:
    1. DASD JCL: DFSTRA01 and DFSTRA02 DD statement.
    2. DASD MDA: DFSTRA01 and DFSTRA02 Dynamic Allocation Members.
    3. TAPE MDA: DFSTRA0T Dynamic Allocation Member.
    4. IMS OLDS: If none of the above are found.

For more information, see Setting up the external trace environment.

Setting the z/OS system trace table size

The z/OS system trace is useful for many types of z/OS problems. At times, it is the only means of reconstructing a problem. The larger you can specify the size of the trace table, the better the chance of diagnosing some of the more intricate problems encountered while running IMS. Specify the z/OS command TRACE ST,999K in the z/OS COMMNDxx member of the SYS1.PARMLIB data set so that the trace table size is in effect during IPL. If you do not specify a trace table size, the default size is 64 KB. If your installation has a limited number of real page frames, remember that the system trace table is page fixed. If you specify the dump option SDATA=(TRT), the dump size increases.

Setting the z/OS master trace table size

The z/OS master trace table contains a buffer of messages from the z/OS master console. These messages are saved in the SDUMP data set and can be viewed using IPCS to aid in problem diagnosis. Specify the z/OS command TRACE MT,100K in the z/OS SCHEDxx member of the SYS1.PARMLIB data set so that the trace table size is in effect during IPL. If you do not specify a trace table size, the default size is 64 KB.