The BYTES parameter specifies the maximum number of bytes of data that a job can process. It provides a means to limit SYSOUT data volume, helping to prevent runaway jobs from producing excessive output and consuming system resources. This parameter is part of JES2 and JES3 job control and resource management.
1//jobname JOB parameters,BYTES=(maximum[,warning])
1//jobname JOB parameters,BYTES=([maximum][,warning][,action])
12//TESTJOB JOB (ACCT),'JOHN DOE',CLASS=A, // MSGCLASS=X,BYTES=500K
This job will be terminated if it produces more than 500 kilobytes of SYSOUT data.
12//TESTJOB JOB (ACCT),'JOHN DOE',CLASS=A, // MSGCLASS=X,BYTES=(2M,1M)
This job has a maximum limit of 2 megabytes, with a warning issued at 1 megabyte.
12//TESTJOB JOB (ACCT),'JOHN DOE',CLASS=A, // MSGCLASS=X,BYTES=(5M,3M,WARNING)
This job will issue a warning at 3 megabytes and another at 5 megabytes but will continue running.
12//TESTJOB JOB (ACCT),'JOHN DOE',CLASS=A, // MSGCLASS=X,BYTES=0
This job has no limit on the number of bytes it can produce.
The BYTES parameter is one of several JOB statement resource limit parameters. It can be used in conjunction with:
Parameter | Function |
---|---|
LINES | Limits the number of output lines |
PAGES | Limits the number of output pages |
CARDS | Limits the number of input cards (JES2 only) |
REGION | Limits the memory allocation for each step |
TIME | Limits the CPU time for the job |
When multiple output limiting parameters (BYTES, LINES, PAGES) are specified, the job will be terminated when any one of the limits is reached.
Consider these factors when setting BYTES limits:
Issue | Possible Solution |
---|---|
Job terminated due to BYTES limit | Increase the BYTES limit if the output is legitimate, or fix the application if it's producing excessive output |
No warning before job termination | Add a warning value to get notified before the job is terminated |
Job not producing expected output | Check if a restrictive BYTES limit is causing the job to terminate early |
Inconsistent behavior between systems | Check for different JES2/JES3 settings or installation-defined limits on different systems |
When a job exceeds its BYTES limit, you may see messages like:
$HASP375 JOBNAME ESTIMATED BYTES EXCEEDED
(JES2)IAT1600 JOB JOBNAME CANCEL REQUESTED BY BYTES ESTIAMTION ROUTINE
(JES3)