We are using WF 3.5 with a SqlWorkflowPersistenceService with the ownershipduration set at 2 hours and the loadingInternval at 1 hour. We are finding that on certain occasions, rehydrated or attempts to rehydryate a persisted state results in some
unusual behaviour. Of particular note, has been two of the same instance running and subsquently one fails (e.g. the first one removes data from a server, the second one attempts the same op -to remove the same data and subsquently fails becasue it was
already removed by the first). In some cases, it almost resembes race conditions of two of the same instances! Trying to replicate or reproduce the issue can be diffucult, but the closest I can get appears to be shortening the ownership
interval in a running workflow instance resulting in
System.Workflow.Runtime.Hosting.PersistenceException: This workflow is not owned by the WorkflowRuntime. The WorkflowRuntime's ownership has expired, or another WorkflowRuntime owns the workflow.
but Im not sure if this is the problem. Does this sound like an ownership issue with a particular workflow runtime? If so, I fail to see how two instances could run at once (I would have thought WD/Sql persistence server would prevent this from occurring)?
Any help would be greatly appreciated,
View Complete Post