I am running a package that has an Execute SQL Task, a Data Flow Task, and then an Execute SQL Task.
My Data Flow Task in set to run in a transaction (ReadCommitted). The first Execute SQL Task and the Data Flow Task run successfully. When the last Execute SQL Task runs, I get the error message:
"[Execute SQL Task] Error: Executing the query "select start_time from TRD_JOB_HISTORY where job_history_id = ?" failed with the following error: "Distributed transaction completed. Either enlist this session in a new transaction or the NULL transaction.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly."
If I set the last Execute SQL Task's TransactionOption to 'Required' (to have it run in a transaction), the package runs successfully. Unfortunately, I don't want that statement to run in a transaction. If I set the last Execute SQL Task's TransactionOption to 'NotSupported', I get the same error message.
Is there anything I can set to have it use "the NULL transaction" or ignore transactions completely?
Thanks in advance,
Jessica
This is strange, it sounds as tho it should work.
Have you tried encapsulating the first Execute SQL Task and the data-flow task in a Sequence container and running the transaction over that Sequence container.
Which container instigates the transaction?
What happens if you set TransactionOption=Supported on the second Execute SQL Task?
-Jamie
No comments:
Post a Comment