Mainframe Path Start learning free
Core10 min readLesson 3 of 3

Working in SDSF and handling spool problems

SDSF is the everyday window onto JES2: panels for the queues, initiators and spool, plus action characters to read, hold, release, cancel and purge. The same view is how support spots and relieves a spool that is filling up before it stops the system.

The panels beyond ST

Most people learn SDSF through the status panel. The other panels answer specific questions faster. Which ones you can open depends on your SAF permissions and the SDSF level at your site.

CommandPanelUse it to
STStatusFind any job and its current queue
IInput queueSee jobs waiting for execution, with class and hold status
DADisplay activeSee what is running now, with CPU and other usage
HHeld outputSee output waiting in held classes
OOutput queueSee output waiting to print
INITInitiatorsSee which classes each initiator serves and whether it is busy or drained
JCJob classesSee class settings, including whether a class is held or WLM-managed
SPSpool volumesSee spool volume status and how full each is
LOGSystem logRead the console messages, including JES2 $HASP messages

Action characters

You type an action character in the NP column beside a row. The same character means the same thing on most panels.

Common SDSF actionsWhat it means
S
Browse all of the job's output
?
List the job's individual output datasets (JESMSGLG, JESJCL, JESYSMSG, SYSOUT DDs)
SJ
Open the job's JCL in an edit session, so a corrected copy can be resubmitted
H / A
Hold or release the job (or, on output panels, its output)
C
Cancel the job
P
Purge the job and its output
O
Release held output so it can be printed
XDC
Write the output to a dataset, then close it

Many columns can be overtyped: on the I panel you can type a new class or priority over the old one, and SDSF issues the matching JES2 command for you. Every action is checked against your authority. In most shops JESSPOOL profiles let you act on your own jobs but not other people's, and production jobs are restricted to operations and support IDs.

How spool space gets used up

Spool is shared by every job, started task and TSO user on the system, or across the whole sysplex with a multi-access spool. It fills when output is created faster than it is purged:

JES2 warns when spool use passes the warning threshold with the $HASP050 message, which names the resource (for example TGS, track groups) and the percentage used. If spool runs out, jobs cannot write output, new work may not be accepted, and the whole system degrades.

Warning in the system log (illustrative)
$HASP050 JES2 RESOURCE SHORTAGE OF TGS - 85% UTILIZATION REACHED

Relieving a spool shortage

  1. Confirm with $D SPOOL or the SDSF SP panel how full the spool is and how fast it is growing.
  2. Find the biggest and fastest-growing users. In SDSF you can sort output and job panels by size or record count; a single job with millions of lines is usually the culprit.
  3. Stop the growth: if a job is looping, cancel it after agreeing with its owner and support lead.
  4. Free space safely: purge old output under the site's retention rules, prioritising test output and output already archived.
  5. Do not purge output needed for diagnosis or audit until it has been saved, for example with XDC to a dataset.
  6. Afterwards, add controls: output line limits, retention rules, or regular automated purges.

Output limits help prevent repeats. A job or step can set a maximum number of lines (for example LINES= on the JOB statement, or OUTLIM= on a SYSOUT DD). When a limit is exceeded the job can be cancelled with system completion code S722, depending on site settings. That turns a site-wide spool problem into one failed job.

Common mistakes

Purging evidence

Purging a failed job's output frees space but destroys the diagnosis. Save what support needs with XDC or a print to dataset first.

Cancelling the wrong job in a hurry

During a spool shortage several jobs may look busy. Confirm the job is the one growing, using sizes in SDSF, and agree the action with its owner when possible.

Leaving held output forever

Held output from test jobs piles up and fills spool over weeks. Purge your own output when you are done, and support site retention rules.

What you will see at work

Key terms

Check your understanding.
Take this lesson's quiz and save your progress. Free.

Take the lesson quiz
← Spool, output and the main JES2 commandsBack to JES2 and SDSF in depth