[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference humane::scheduler

Title:SCHEDULER
Notice:Welcome to the Scheduler Conference on node HUMANEril
Moderator:RUMOR::FALEK
Created:Sat Mar 20 1993
Last Modified:Tue Jun 03 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:1240
Total number of notes:5017

1213.0. "What does abort do with postfunctions?" by UTRTSC::WDEBAKKER (Feed your head) Wed Feb 12 1997 07:15

I've had a question from a customer running Scheduler V2.1B
who states that when a SCHEUDLE ABORT is done, the 
postfunction of the job sometimes is not executed and
sometimes is executed only half.
They use the postfunction to activate pagers to
notify the operators. They noticed that sometimes,
if they abort the job the postfunction is not
executed at all, and sometimes, funny enough, that
the postfunction is being activated. This led to
a situation where the pagers were activated, but the
main job was already gone.
What is the intended behaviour of abort concerning
postfunctions? Is it possible to specify that you
do want the postfunction executed, no matter what
happened to the main step?

Cheers,
Willem
T.RTitleUserPersonal
Name
DateLines
1213.1kills the process that would have executed themRUMOR::FALEKex-TU58 KingThu Feb 13 1997 19:1712
    Since the pre- main and post- functions all are executed in the same
    process, (if they didn't, it could cause problems with things like
    device allocations) and SCHED ABORT kills the main process, the
    postfunction generally does not execute.  This is documented somewhere.
    
    Postfunctions should *not* be treated as a reliable mechanism that is
    guaranteed to always execute.   For example, if you put the line 
    
    $ logoff
    
    in the middle of a job's command procedure,  or if you do $ STOP/ID on
    a running job, then the postfunction won't execute.
1213.2status of a job excplainedHLFS00::ERIC_SEric Sonneveld MCS - B.O. IS HollandMon Feb 24 1997 10:0412
The official job run sequence is:
If there is a pre function - execute it
If status ok then execute main function, if status is failed then stop
execution, end status of the job is the status of the (failed) prefunction.
After execution of main function and there is a post function run this (in all
cases, you can override the main status always in the post function).
If there is no post function the end status of the job is the status of the
main funtion
If there was a post function the end status of the job is the status of the
post function.

Eric