I'm not sure this is the right forum for this but here goes...
I have an SSIS package that is loading data to a table in one data flow. A subsequent data flow reads data from that table and loads it (via a Slowly Changing Dimension task) to a target table. The final target table is in a different SQL database than the source table. The entire package is running in one transaction. The target table has an INSERT/UPDATE trigger that updates a column on the table with the current date (update audit date). When I run this package, the Update path of the SCD fails and I receive several error messages. The errors are:
"A trigger returned a resultset and/or was running with SET NOCOUNT OFF while another outstanding result set was active.".
"Uncommittable transaction is detected at the end of the batch. The transaction is rolled back."
"The current transaction cannot be committed and cannot support operations that write to the log file. Roll back the transaction."
The first message always appears twice in the output and the subsequent messages appear once for each row on the update path of the SCD.
The trigger is a simple update. It does not return a result set. We have also tried changing the trigger to an insert (to an audit table) to no avail. If I leave the trigger enabled but comment out all of the SQL, the process works.
If I disable the trigger, the package works. If I leave the trigger enabled but remove the transaction from the package, it also works. It is only when the transacation and trigger are both enabled that I have trouble. I have tried this with several input data sets.
Any insight would be appreciated.
Thanks,
Chris