Tip: Timers running after recycling an IIS worker process

Tip: Timers running after recycling an IIS worker process

  

Symptoms:

After executing an IIS reset, all worker processes have been recycled, and the running timers are no longer running, but in the Service Center, the respective timer's details indicate that they're still running.

Cause:

When a worker process is recycled through an IIS reset or a system failure, and a timer was being executed by that worker process, the timer's metada used by the Service Center gets inconsistent with the timer's reality. Since the timer died unexpectedly, the Scheduler Service couldn't synchronize the timer's metadata and will be forced to execute a recovery action to do so. However, the recovery action must be executed by the Scheduler Service when there's a 100% certainty that the timer didn't properly finished. This only happens after the specified timeout has been elapsed.
Hence, the recovery action to synchronize the timer's metadata is only done after the timeout has expired, generating a time window until this happens, where the data is inconsistent.

Resolution:

Wait until the timeout expiration occurs for the recovery to take place. You may redefine the timeout variable to a smaller value.

-----------------------------------------------------
Best Regards

Miguel Simões João