Mar 21, 2017
Jan 07, 2022
CMS Core
Closed, Acceptance tests pass
It is now possible to define that a job is restartable:
[ScheduledPlugIn(Restartable = true)]
If IIS crashes or is recycled when a job is running, the scheduler will by default run the job on the next scheduled time. A _restartable _ job will be started again to make sure it can run to completion. This assumes the job can continue where it stopped. The job can restart on any available instance/server.
Previously, there was a 60 minute timeout between when a job was forcefully stopped due to an IIS crash and the next scheduled execution. The ping interval, which tracks running jobs, has been tuned down, and the timeout is now 2 minutes. This makes sure that jobs running on a faster schedule do not have to wait 60 minutes after a crash. Note that the timeout also applies to restarts: a job will not restart within 2 minutes of the last known ping.
Documented in SDK under http://world.episerver.com/documentation/developer-guides/CMS/scheduled-jobs/.