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.