I have Autosys 11.3.5 environment scheduling 1000+ SAP jobs.This includes command jobs and BOX jobs with heavy dependency conditions involved.
Recently we have SAP migration activity for 2 days, hence i have to stop all jobs.I am not sure how to handle the situation.
If I put all jobs on_hold on Friday and off_hold it on Monday, all jobs will run immediately since condition is met already. We don't want 1000 jobs to run at a time, it should run only in the Monday schedule time.
on ice / off ice will not help as it wait for the condition to reoccur.
So I have the below plan,
1. put all jobs on hold on Friday.
2. Mark all the on hold job as success using sendevent command.
3. From here job should run as per schedule time on Monday.
Please share your comments/ better plan to handle the above situation. Awaiting response.
If they all use the same agent machine.
Batch System Engineer
Batch Innovation Team
T (313)553-1727| C (770)502-5519
Thanks for your response.
Yes they use the same agent machine.
I can change the agent to OFFLINE however that will put all 1000 jobs in pending state and will run immediately once agent is brought online.
I would like the jobs to be executed only on the monday scehdule time.
Then for the times jobs do a one time override and change days of week to the Monday.before putting the machine offline.
You could also set the jobs to INACTIVE and control the specific Monday jobs with a sendevent.
Thanks for your input.
YEs job over ride can control the scheudle, however checking the schedule for 1000+ jobs and overiding is very tideous.
As you said ( INACTIVE) I was tried the below scanario , it seems it will work out.
.1. on holding the time dependent jobs before the downtime. ( this would avoid the dependent jobs to trigger)
Once maintenance is over refreshing the job with
#jil >update_job: job_name
This would refresh the schedule to run for monday when i do the refresh.
Later off hold the job. Jobs would move to INACTIVE status and will trigger as per the schedule time.
You could also explore the use of a 'holding box'. In this scenario, a new box is defined with no scheduling criteria. All top level boxes/jobs that you wish to hold are added to the holding box. As the holding box will not run, no jobs within it will run. At the end of the activity, remove the jobs from the holding box by reversing the update. This will cause the job start times to be updated and will allow you to retain the existing job statuses.
For example, to hold the jobs:
insert_job: holding.box job_type: BOX owner: autosys
update_job: top.level.box.1 box_name: holding.box
update_job: top.level.box.2 box_name: holding.box
update_job: top.level.job.1 box_name: holding.box
update_job: top.level.box box_name:
update_job: top.level.box.2 box_name:
update_job: top.level.job.1 box_name:
Thanks for your inputs, seems to be a good idea to have the status of the jobs retained.