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.
| Command | Panel | Use it to |
|---|---|---|
| ST | Status | Find any job and its current queue |
| I | Input queue | See jobs waiting for execution, with class and hold status |
| DA | Display active | See what is running now, with CPU and other usage |
| H | Held output | See output waiting in held classes |
| O | Output queue | See output waiting to print |
| INIT | Initiators | See which classes each initiator serves and whether it is busy or drained |
| JC | Job classes | See class settings, including whether a class is held or WLM-managed |
| SP | Spool volumes | See spool volume status and how full each is |
| LOG | System log | Read 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.
S?SJH / ACPOXDCMany 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:
- A looping program writing DISPLAY lines or messages without end.
- Started tasks that run for months and keep adding to their logs.
- Held output that nobody reads or purges, building up day after day.
- A large dump written to SYSOUT, or many jobs failing and producing big listings at once.
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.
$HASP050 JES2 RESOURCE SHORTAGE OF TGS - 85% UTILIZATION REACHED
Relieving a spool shortage
- Confirm with
$D SPOOLor the SDSF SP panel how full the spool is and how fast it is growing. - 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.
- Stop the growth: if a job is looping, cancel it after agreeing with its owner and support lead.
- Free space safely: purge old output under the site's retention rules, prioritising test output and output already archived.
- Do not purge output needed for diagnosis or audit until it has been saved, for example with XDC to a dataset.
- 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 a failed job's output frees space but destroys the diagnosis. Save what support needs with XDC or a print to dataset first.
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.
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
- Developers live in SDSF: reading output, resubmitting with SJ, and purging their own test jobs.
- Operations watch for $HASP050 and similar warnings through automation that raises an alert before spool runs out.
- Many teams now read job output through Zowe or IDE plug-ins, which use the same JES2 queues underneath.
Key terms
Check your understanding.
Take this lesson's quiz and save your progress. Free.