SharedConnectionWorkflowCommitWorkBatchService
I'm persisting my workflows to separate server. This didn't work and after a lot of pounding my head against the wall and digging around in the forums I saw posts from Xin and Steve explaining SharedConnectionWorkflowCommitWorkBatchService as a workaround for the DTC issue. And now persistence works. (Thank you Xin & Steve).
My question is will this workaround be a permanent part of the release going forward, or has this already been addressed / corrected?
I searched the database but the latest info I could find was in mid-May. Can I get a status on this?
Thanks,
Matt
Hi Tom.
Thank you very much for responding.
An early post in the forums makes this sound like an issue to be worked around:
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=216629&SiteID=1
What exactly is the batch service there for? Is it just there to provide a "no transactions" option to avoid the restrictions of the DTC? Does it do anything else?
The problem for me is that my application shouldn't need to know whether or not transactions are being used, since the persistence is abstracted away from it. I don't want to add code for something that is really a configuration option. Is there a section in the WF config block where I can turn transactions on or off?
Also, is there any documentation available on the tradeoffs between enabling DTC or using the batch service? I've only seen the batch service mentioned in the forums.
Thanks!
Matt
From another post on the subject:
Joel West wrote: |
| I'll add some to this. The SharedConnectionWorkflowCommitWorkBatchService can only be used with the out of box SqlWorkflowPersistenceService and SqlTrackingService. The connection strings must be the same (both sets of Sql objects in the same databases). This is intended as a performance enhancement that avoids the overhead of extra connections to the database and DTC transactions. Important: The SharedConnectionWorkflowCommitWorkBatchService is not about whether or not persistence and tracking will be written transactionally. Regardless of the WorkflowCommitWorkBatchService that you use the services will always use the same transaction (assuming the SqlTrackingService is left in its default IsTransactional=true state; setting this to false will have a completely different write semantic however, see the help docs for more details
|
|