Skip,

Here is what I devised, and has worked pretty well.  We use netview/SA390 for 
our automation.  The following rules get tripped at 80% or 85% utilization.

SPOOLSHORT :                                      
   CMD=(,,'MVS $D JOBQ,SPOOL=(%>01)')              
   CMD=(PASS1,,'MVS $CJ(E*,T*),SPOOL=(%>10),PURGE')   << in our shop E* and T* 
are non-prod jobs, and this usually kills the culprit
   CMD=(PASS2,,'MVS $PJ(E*,T*),SPOOL=(%>5)')          
   CMD=(PASS3,,'MVS $PJ(E*,T*),SPOOL=(%>2)')          
   CMD=(PASS4,,'MVS $PO JOBQ,READY,A>14')  
   CMD=(PASS5,,'MVS $PO TSU(*),ALL,A>1')   
   CMD=(PASS6,,'MVS $PO STC(*),ALL,A>10')  
   CMD=(PASS7,,'MVS $PO JOBQ,Q=D,A>1')     
   CMD=(PASS8,,'MVS $PO JOBQ,ALL,A>10')    

_________________________________________________________________
Dave Jousma
Assistant Vice President, Mainframe Engineering
[email protected]
1830 East Paris, Grand Rapids, MIĀ  49546 MD RSCB2H
p 616.653.8429
f 616.653.2717

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf 
Of Skip Robinson
Sent: Thursday, December 17, 2015 4:06 PM
To: [email protected]
Subject: Re: Delete part of spool for active job

(I could start a new thread if needed.) 

We are reviewing our automated response to 'full spool' condition because it's 
very disruptive and not always recognized right away. I'd like to purge an 
offending job. $DSPL,JOBS=nn will report jobs using more than nn per cent of 
spool. Problem is that the response to a REXX CONSOLE command does not include 
job number. If more than one job of the same name is found, $PJ will not work 
without the number. Any advice?

.
.
.
J.O.Skip Robinson
Southern California Edison Company
Electric Dragon Team Paddler
SHARE MVS Program Co-Manager
323-715-0595 Mobile
[email protected]
[email protected]

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf 
Of Elardus Engelbrecht
Sent: Thursday, December 17, 2015 11:52 AM
To: [email protected]
Subject: [Bulk] Re: Delete part of spool for active job

Skip Robinson wrote:

>There are two distinct conditions that must be considered.

>1. A large output needs to be managed but is not causing a spool problem.
>2. An ginormous output--together with benign output--has pushed spool 
>utilization to 100%.

>In the case of #1, others have suggested ways to preserve at least some of the 
>output. Basically, assuming that the JCL was not coded to anticipate this 
>situation, you need to copy some portion of the output to another class or 
>destination. You could also save output to a data set. All spool management 
>tools I know of have this capability. Once desired output has been preserved 
>outside the jumbo job, El Gordo can be purged.

True. That is if the output is deallocated or freed by the offending program in 
the first place while that program is running.


>In the case of #2, your options are limited. If spool shortage cannot be 
>relieved, you may not even be able to logon to the MAS because even a TSO 
>address space needs some spool space.

True. I still have the scars of that, luckily I have a spare TSO session where 
I could fix those guzzling jobs properly. (and also sorted out an El Gordo XMIT 
data on the JES2 SPOOL, which guzzled up the whole spool. I deleted that and 
showed that grumbling XMITter how to do FTP instead of XMIT.)

And trained that submitter of those jobs to insert a SYSOUT 
FREE=CLOSE,SPIN=UNALLOC before re-submitting that offending job.

Or teach them to redirect the output to a dataset.

Hard work to train those dummies... ;-D


>I don't believe that you can purge an individual segment while a job is still 
>writing to it.

True. Also while that step is still writing to it. Wait for the step to free or 
deallocate the output and then you can purge it.


>When spool-full condition has hit us, the offending job is usually still 
>running, so that space recovered by purging some disposable output is 
>immediately filled up again by the same job. If this situation occurs, you 
>have little choice but to cancel *and purge* the offending job, which 
>unfortunately means losing all the output.

Sometimes the only option. Just preserve the 'x millions lines written' in the 
SYSLOG to pacify the angry submitter...

I sometimes threatened to write that JES2 exit to limit/crush those spool 
eating jobs outputs, but my users cancelled my obsession to keep the JES2 spool 
empty... ;-)

Groete / Greetings
Elardus Engelbrecht

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions, send email to 
[email protected] with the message: INFO IBM-MAIN

This e-mail transmission contains information that is confidential and may be 
privileged.   It is intended only for the addressee(s) named above. If you 
receive this e-mail in error, please do not read, copy or disseminate it in any 
manner. If you are not the intended recipient, any disclosure, copying, 
distribution or use of the contents of this information is prohibited. Please 
reply to the message immediately by informing the sender that the message was 
misdirected. After replying, please erase it from your computer system. Your 
assistance in correcting this error is appreciated.


----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to