In Microsoft Windows Workflow Foundation, a timer does not resume correctly after reloading a workflow.
This problem occurs because the unload operation changes the status of the timer queue and does not set the dirty bit for the workflow. The timer queue has a Boolean flag. This flag is used to indicate whether the scheduler service must reregister the timer queue. When the workflow is unloaded, this flag changes to indicate that the workflow must be reregistered to reload the workflow. If the unload operation does not set the dirty bit for the workflow, this change may not be saved.
This fix will resume execution for all delayed workflows with satisfied conditions.
|