Home Page › Forums › BizTalk 2004 – BizTalk 2010 › transaction commit error in long running transaction
- This topic has 1 reply, 1 voice, and was last updated 9 years, 8 months ago by
community-content.
-
AuthorPosts
-
-
April 10, 2008 at 11:46 AM #19301
I have an orchestration with a control shape that updates a database from an flat file using a .net assembly.
The flat file is not received by biztalk but rather is opened by the .net assembly. This works fine for most files but ~ once a month I need to process a flat file that is > 11 MB. In this case the database update takes ~5 min. Even this works but I wind up with a suspended instance (see below). It appears from the stack trace that the Biztalk engine is trying do a commit to the language store. Oddly the stack trace also refers to an AtomicTransaction.OnCommit(). The reason that seems peculiar is that transaction type of my orchestration is set to “Long Running”. My first guess to solving the problem was that the default timeout was too short and this was triggering a dehyradation even though I had specified the Long Running transcation type. I therefore tried to set the timeout to 30 minutes but not joy. Can anyone tell me what is happening?
Thanks
Dave Ferguson
————————————————
Event Type: Error
Event Source: XLANG/s
Event Category: None
Event ID: 10034
Date: 04/10/2008
Time: 2:16:10 PM
User: N/A
Computer: BNSL3T6558
Description:
Uncaught exception (see the ‘inner exception’ below) has suspended an instance of service
‘Scotiabank.Biztalk.ScotiaACHXInputXLANG.ScotiabankScotiaACHXInputXLANG(f6df02ad-361c-f0c7-bd85-4b1482359b15)’.
The service instance will remain suspended until administratively resumed or terminated.
If resumed the instance will continue from its last persisted state and may re-throw the same unexpected exception.
InstanceId: 51878aac-9062-4473-988f-bfbce5f231f4
Shape name: EnqueueReportFile
ShapeId: 6b750935-c468-4b11-9fc1-148b1fd525f4
Exception thrown from: segment 2, progress 59
Inner exception: The transaction has already been implicitly or explicitly committed or aborted
(Exception from HRESULT: 0x8004D00E)
Exception type: COMException
Source: Microsoft.XLANGs.BizTalk.Engine
Target Site: Void Commit()
The following is a stack trace that identifies the location where the exception occuredat Microsoft.BizTalk.XLANGs.BTXEngine.BTXXlangStore.Commit()
at Microsoft.XLANGs.Core.Service.Persist(Boolean dehydrate, Context ctx, Boolean idleRequired,
Boolean finalPersist, Boolean bypassCommit, Boolean terminate)
at Microsoft.XLANGs.Core.TransactionalContext.OnCommit()
at Microsoft.XLANGs.Core.AtomicTransaction.OnCommit()
at Scotiabank.Biztalk.ScotiaACHXInputXLANG.ScotiabankScotiaACHXInputXLANG.segment2(StopConditions stopOn)
at Microsoft.XLANGs.Core.SegmentScheduler.RunASegment(Segment s, StopConditions stopCond, Exception& exp)For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
-
April 11, 2008 at 6:39 AM #19308
I solved my own problem. The orchestration was running as a long runing transaction type but I had also defined a scope. The scope used an atomic transaction type. My .net assembly was not serializable so the varibles could not be stored. The problem was solved instead by increasing the timeout of the atomic transaction.
-
-
AuthorPosts
- The forum ‘BizTalk 2004 – BizTalk 2010’ is closed to new topics and replies.