Running a job from the Delphix engine for a dSource or a VDB fails with:
Msg 3609, Level 16, State 2, Server SERVER_NAME, Line 1 The transaction ended in the trigger. The batch has been aborted.
1) Delphix engine, any version
2) MSSQL environment, staging or target instance, any supported version
Applicable Delphix Versions
- Click here to view the versions of the Delphix engine to which this article applies
Major Release All Sub Releases 6.0 18.104.22.168, 22.214.171.124, 126.96.36.199, 188.8.131.52, 184.108.40.206, 220.127.116.11, 18.104.22.168, 22.214.171.124, 126.96.36.199, 188.8.131.52, 184.108.40.206
220.127.116.11, 18.104.22.168, 22.214.171.124, 126.96.36.199, 188.8.131.52, 184.108.40.206, 220.127.116.11, 18.104.22.168, 22.214.171.124, 126.96.36.199, 188.8.131.52, 184.108.40.206 220.127.116.11, 18.104.22.168, 22.214.171.124, 126.96.36.199, 188.8.131.52, 184.108.40.206
Disable or drop the SQL server DDL triggers and run the job again.
It is possible to check for the SQL server DDL triggers via T-SQL or on Microsoft SQL management studio.
select name,is_disabled from sys.server_triggers go
You can determine details about the trigger using Microsoft SQL Server Management Studio (SSMS):
- After connecting to the SQL Server instance in question, navigate to Server Objects -> Triggers
- Review the code of each trigger:
If "Disable" is available and "Enable" grayed out, it means that the trigger is currently enabled.
Example of code view:
The above trigger prevents all databases from being dropped. When the Delphix jobs involving the deleting of staging or VDB databases encounter the section to DROP the object, the failure occurs. From a user's standpoint, this is to prevent external DROP commands from executing.
The following articles may provide more information or related information to this article: