Let Us Manage Your Mainframe Environment & Start Your Modernization Initiatives
Let Us Manage Your Mainframe Environment & Start Your Modernization Initiatives
Maintec-Minority-By-NMSDC

How to Add a Second JES2 SPOOL Volume in z/OS

Category: z/OS Administration, JES2
Applies To: IBM z/OS 2.x, z/OS 3.x, JES2

Overview

As system workloads increase, a single JES2 SPOOL volume may become insufficient to handle the growing number of jobs and spool datasets. Adding an additional JES2 SPOOL volume provides increased capacity, improved resiliency, and better workload distribution.

This article walks through the complete process of adding a second JES2 SPOOL volume, explains a common activation failure (RC=86), and documents the required JES2 parameter updates to permanently enable the new volume.

Environment

Existing SPOOL Volume: SPOOL1
New SPOOL Volume: SPOOL2
JES2 Dataset: SYS1.HASPACE

Step 1 – Allocate the New JES2 SPOOL Dataset

Run:

//DEFSPOOL EXEC PGM=IEFBR14
//SYSPRINT DD SYSOUT=*
//ALLOC DD DSN=SYS1.HASPACE,
// DISP=(NEW,KEEP,KEEP),
// SPACE=(CYL,9000),
// UNIT=3390,
// VOL=SER=SPOOL2,
// DCB=(DSORG=PS,RECFM=F,LRECL=4096,BLKSIZE=3992),
// DSNTYPE=LARGE

This creates a large-format SYS1.HASPACE dataset for the new JES2 SPOOL volume.

Step 2 – Start Formatting the New SPOOL Volume

Issue:
$S SPL(SPOOL2),FORMAT

If JES2 returns:

$HASP003 RC=(86)

SPOOL VOLUME CANNOT BE STARTED –
NO TRACK GROUPS AVAILABLE.
CHECK MAX TGSPACE ON SPOOLDEF.

Then continue with the following steps.

Understanding RC=86

Display the current JES2 SPOOL definition:

$D SPOOLDEF

Example:

TGSPACE=(MAX=16288,
DEFINED=16288,
ACTIVE=16288)

RC=86 indicates that JES2 has exhausted available Track Groups (TGSPACE), not DASD space.

Step 3 – Increase TGSPACE

Issue:

$T SPOOLDEF,TGSPACE=(MAX=42576)

Verify:

$D SPOOLDEF

Example:

TGSPACE=(MAX=48864,
DEFINED=16288,
ACTIVE=45000,
FREE=33985)

Step 4 – Restart Formatting

Retry:

$S SPL(SPOOL2),FORMAT

Example:

$HASP893 VOLUME(SPOOL2)
STATUS=INACTIVE
COMMAND=(START,FORMAT)

$HASP423 SPOOL2 IS BEING FORMATTED

Step 5 – Respond to JES2 Prompt

When prompted:

$HASP811 REPLY Y TO CONTINUE
OR N TO TERMINATE START PROCESSING

Reply:

Y

Example:

$HASP850 45000 TRACK GROUPS ON SPOOL1
$HASP850 3864 TRACK GROUPS ON SPOOL2

Step 6 – Verify

Issue:

$D SPL,ALL

Verify SPOOL1 and SPOOL2 both show STATUS=ACTIVE.

Step 7 – Make Changes Permanent

Update JES2PARM:

TGSPACE=(MAX=42576,WARN=80)

FENCE=(ACTIVE=YES,VOLUMES=2)

Validation Checklist

✓ SYS1.HASPACE allocated on SPOOL2
✓ TGSPACE increased
✓ SPOOL2 formatted
✓ STATUS=ACTIVE
✓ Track Groups allocated
✓ JES2PARM updated
✓ Restart recognizes both SPOOL volumes

Best Practices

• Update JES2PARM after dynamic changes.
• Verify with $D SPL,ALL.
• Monitor TGSPACE utilization.
• Plan SPOOL growth before capacity limits are reached.

Key Takeaways

• RC=86 typically indicates exhausted TGSPACE rather than DASD capacity.
• Increasing TGSPACE allows new SPOOL volumes to be added.
• Permanent JES2PARM updates are required after dynamic changes.
• Always verify the new SPOOL volume before production use.

Scroll to Top