locked
Trouble suspending and resuming non service workflow managed by AppFabric RRS feed

  • Question

  • I have the following setup:
    1. Windows server 2008 R2 with IIS 7 and AppFabric installed.
    2. A service with a xamlx Workflow, but without ReceiveActivity, using technique suggested by Michael green here:
       http://social.msdn.microsoft.com/Forums/eu/dublin/thread/22c33c90-6bef-40e9-8b28-9aada4157281

     

    This works great. I can host a non workflow service, which is basically a flowchart loop that reads messages from a queue,
    and i can track and manage that workflow via AppFabric Dashboard, and instance and monitor DBs.

    The trouble is, that when i try to suspend the workflow, although the workflow itself seems to be suspended (messages remain in the queue)
    AppFabric Dashboard (and monitor and instance store DBs) think its still running(active).

    The really weird part is, when i stop the service application, the instance store immediately updates the SuspendReason column to:
    'Instance was suspended by workflow managment service based on user request'.

    Next, i start up the Service again, and this time the Dashboard shows that the workflow instance is now suspended. Great!.
    But when i try to resume it, the workflow state in the monitor db changes to 'Unsuspended', but the ExecutionState in the InstanceStore DB remain idle.
    Furthermore, I get the ServiceException entry in the WCF part in the Dashboard saying the following:
    ServiceException: The server was unable to proccess the request due to an internal error. For more information turn on includeExceptionDetailsInFaults.

    I'm not sure to what service this exception is referring, because i have the includeExceptionDetailsInFaults set to true in my non Service workflow service.

    And one last thing, I have also a WCF call completed entry with the operation name: EndDuplicated.

    Does any of that sounds familiar to anyone?
    Thank you

     

    • Moved by Andrew_Zhu Monday, March 14, 2011 3:34 AM (From:.NET 4: Windows Workflow Foundation)
    Wednesday, March 9, 2011 10:32 PM

All replies

  • I would try using the service instance management cmdlets documented here: http://msdn.microsoft.com/en-us/library/ee677323.aspx.

    Thanks,


    If this answers your question, please use the "Answer" button to say so | Ben Cline
    Saturday, July 16, 2011 1:02 AM
    Moderator
  • And one last thing, I have also a WCF call completed entry with the operation name: EndDuplicate.

    I've just started using Appfabric for monitoring WCF and I'm running into this too - EndDuplicate shows up a lot in our monitoring data.

    We're also getting a few other odd function names showing up in the results.

    Is there any decent documentation yet on the information that gets recorded by AppFabric monitoring?

    Monday, October 3, 2011 10:46 AM
  • For  others searching, I have had Resume fail when the xamlx definition has been updated. Verbose logging shows the error "Workflow load failed. The given activity tree is not compatible with this instance."

    .NET 4.5 has better support for xamlx versioning. On .nET 4.0 I have a command in each workflow that is able to recreate an instance in any state based on the database record of the business object. This allows to terminate all WF instances, change xamlx, and recreate instances based on the last business object state.


    Tech Lead

    Saturday, November 24, 2012 11:42 AM