Skip to main content

Using CTF to solve RTS0173 errors in JCL

  • April 30, 2014
  • 0 replies
  • 0 views

Problem:

A JCL job ends with COND CODE RTS0173 as shown in the console log.  Error 173 means "program not found in drive/directory".  But the error message does not identify the missing program.  How can the identity of the missing program be revealed?

Resolution:

The Consolidated Trace Facility (CTF) can capture additional information and reveal the cause of the RTS0173 error.

The way to turn on CTF, is to set the environment variable MFTRACE_CONFIG pointing to a valid CTF configuration file.

It is good practice to set this environment variable MFTRACE_CONFIG in an individual region’s configuration area (so different CTF configuration files can be used for different regions).  Find this configuration area on the Enterprise Server Administration web page, under a particular Server (i.e. region), on the Server > Properties > General tab: the field named "Configuration Information."  Environment variable settings there must be listed under the tag spelled [ES-Environment].  This spelling is case-sensitive.

Also, the environment variable MFTRACE_LOGS can be set in the region’s configuration area under the tag [ES-Environment] so the CTF trace logs for each region can be written to a directory particular to that region.

Here are example entries:

[ES-Environment]
MFTRACE_CONFIG=c:\\Regions\\ESDEMO-ctf.cfg
MFTRACE_LOGS=c:\\MF\\ESDEMO-CTFtrace

Note: the file specified by MFTRACE_CONFIG must actually exist, and the folder specified by MFTRACE_LOGS must exist.  Restart the region so these environment variables will be applied.

For debugging 173 errors in JCL, use a CTF configuration file with the following lines in it:

---------------------------------------------------------------------

mftrace.dest = textfile

mftrace.level = debug

mftrace.comp.mf.rts#pgmsearch  = true
mftrace.comp.mf.rts#pgmload  = true

---------------------------------------------------------------------

The resulting CTF trace files will have "textfile" in their names, and their names will also include the PID (process-id) of each process traced.  The process of interest will be the JES initiator process that handled the JCL job in question, but a fast way of finding the pertinent information is to search all resulting CTF traces for this pattern:

MF.RTS 255 3 : 173

Lines matching this pattern will reveal the name of the missing module, for example:

16:47:54.338 0 MF.RTS 255 3 : 173 1 "TESTP2"

In the above case the missing module was named TESTP2.


#MFDS
#EnterpriseDeveloper

0 replies

Be the first to reply!