November 5, 2012 at 10:43 pm
Hi All,
I created a SSIS package which contains two "Execute SQL Tasks" components - one inserts/updates the records in Table1 of DB1 and other inserts/updates the records in Table2 of DB2.
I have also enabled the Transaction by setting the TransactionOption = Required at the package level and TransactionOption = Supported at the component level. So either all operations (done by both EST) or none should commit.
In our dev and test env it is working fine. But on production (with cluster MSDTC), few times it throws an error:
Executing the query "EXEC [etl].[uspRptPopulateFactCourseUsage] @Linked..." failed with the following error: "The Microsoft Distributed Transaction Coordinator (MS DTC) has cancelled the distributed transaction.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.
Any suggestions would be useful!!
November 5, 2012 at 11:51 pm
Are their problems with the query?
What happens if you run them in SSMS (if possible)? Do they succeed?
Need an answer? No, you need a question
My blog at https://sqlkover.com.
MCSE Business Intelligence - Microsoft Data Platform MVP
November 6, 2012 at 12:04 am
No issue with the query.
As I mentioned this error doesn't comes very often. 10 in 160 (less than 10%) times this error comes.
November 6, 2012 at 12:07 am
Tarun Jaggi (11/6/2012)
No issue with the query.As I mentioned this error doesn't comes very often. 10 in 160 (less than 10%) times this error comes.
I see you use the parameter mapping if I'm not mistaken. Any possible issues with that? Usually this gives those types of errors.
Need an answer? No, you need a question
My blog at https://sqlkover.com.
MCSE Business Intelligence - Microsoft Data Platform MVP
November 6, 2012 at 12:14 am
As both Execute SQL Tasks are pointing to different databases.
Those Execute SQL Tasks calls stored procedures (that populate the data into the corressponding tables).
Now what I want is lets say if the first Execute SQL Tasks (EST1) completes sucessfully and then the second Execute SQL Tasks (EST2) get failed then all the operations done by EST1 will also get rollbacked. For that I used TransactionProperty of SSIS which worked fine at dev and test env but on Prod (cluster MSDTC) it throws this MSDTC error few times.
Viewing 5 posts - 1 through 4 (of 4 total)
You must be logged in to reply to this topic. Login to reply