Commands that report thread-related data

Most of the commands used to service jobs are not changed to support multithreaded processes. Therefore, the existing commands continue to operate against service jobs, rather than individual threads within service jobs.

The following commands are enhanced to report thread-related data:

Dump Job (DMPJOB) command

The Dump Job command now dumps all threads within a job. The thread-related data is available though use of the JOBTHD parameter on the command. The following example shows how to obtain a multithreaded job dump that contains the thread-related data:

STRSRVJOB JOB(000000/USER/JOBNAME)     
DMPJOB PGM(*NONE) JOBARA(*NONE) ADROBJ(*NO) JOBTHD(*THDSTK)     
ENDSRVJOB
Start Trace (STRTRC) command

You can use the Start Trace command to trace either all threads in a multithreaded job, or up to 20 specific threads in a multithreaded job. The thread identifier is included in each trace record to indicate the thread that caused the record to be entered into the log. The following example shows how to obtain a trace for a multithreaded job:

STRTRC SSNID(MYSSNID) JOB((000000/USERNAME/JOBNAME (*ALL)))
    ... tracing the job
ENDTRC SSNID(MYSSNID) DTALIB(MYLIB) PRTTRC(*YES)  

The following example shows how to obtain a trace for specified threads in a multithreaded job:

STRTRC SSNID(MYSSNID) JOB((000000/USERNAME/JOBNAME (00000001 00000002 00000003)))
    ... tracing the job
ENDTRC SSNID(MYSSNID) DTALIB(MYLIB) PRTTRC(*YES)  
First Failure Data Capture (FFDC) function

FFDC is a function that you can use in your program, service program, or module to report a problem for an authorized program analysis report (APAR). FFDC logs the problem, builds a symptom string, and collects problem analysis data.

FFDC is not fully functional when used in a multithreaded program. When called in a multithreaded program, FFDC provides partial support that includes:

  • Collecting data item information and storing this information in the QPSRVDMP spooled file.
  • Storing the point of failure, symptom string, and the detecting and suspected program information in the QPSRVDMP spooled file. The job log also contains this information.
  • Starting the Dump Job (DMPJOB) command.

FFDC support that is not provided within a multithreaded job includes object dumping, problem entry creation, and data collection for problem determination.