Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions internal/diff/table.go
Original file line number Diff line number Diff line change
Expand Up @@ -1511,6 +1511,14 @@ func (td *tableDiff) generateAlterTableStatements(targetSchema string, collector
CanRunInTransaction: true,
}
collector.collect(context, sql)

if trigger.Comment != "" {
generateTriggerComment(trigger, td.Table.Schema, td.Table.Name, targetSchema, DiffTypeTableTrigger, collector)
}

if trigger.Disabled {
generateTriggerEnabledState(trigger, td.Table.Schema, td.Table.Name, targetSchema, DiffTypeTableTrigger, collector)
}
}

// Add policies - already sorted by the Diff operation
Expand Down
2 changes: 2 additions & 0 deletions testdata/diff/create_trigger/add_trigger/diff.sql
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ CREATE OR REPLACE TRIGGER employees_last_modified_trigger
FOR EACH ROW
EXECUTE FUNCTION update_last_modified();

COMMENT ON TRIGGER employees_last_modified_trigger ON employees IS 'Updates last_modified timestamp on every row update';

CREATE OR REPLACE TRIGGER employees_salary_update_trigger
BEFORE UPDATE OF salary ON employees
FOR EACH ROW
Expand Down
2 changes: 2 additions & 0 deletions testdata/diff/create_trigger/add_trigger/new.sql
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ CREATE TRIGGER employees_last_modified_trigger
FOR EACH ROW
EXECUTE FUNCTION public.update_last_modified();

COMMENT ON TRIGGER employees_last_modified_trigger ON public.employees IS 'Updates last_modified timestamp on every row update';

CREATE TRIGGER employees_insert_timestamp_trigger
AFTER INSERT ON public.employees
FOR EACH ROW
Expand Down
6 changes: 6 additions & 0 deletions testdata/diff/create_trigger/add_trigger/plan.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,12 @@
"operation": "create",
"path": "public.employees.employees_last_modified_trigger"
},
{
"sql": "COMMENT ON TRIGGER employees_last_modified_trigger ON employees IS 'Updates last_modified timestamp on every row update';",
"type": "table.trigger",
"operation": "alter",
"path": "public.employees.employees_last_modified_trigger"
},
{
"sql": "CREATE OR REPLACE TRIGGER employees_salary_update_trigger\n BEFORE UPDATE OF salary ON employees\n FOR EACH ROW\n EXECUTE FUNCTION update_last_modified();",
"type": "table.trigger",
Expand Down
2 changes: 2 additions & 0 deletions testdata/diff/create_trigger/add_trigger/plan.sql
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ CREATE OR REPLACE TRIGGER employees_last_modified_trigger
FOR EACH ROW
EXECUTE FUNCTION update_last_modified();

COMMENT ON TRIGGER employees_last_modified_trigger ON employees IS 'Updates last_modified timestamp on every row update';

CREATE OR REPLACE TRIGGER employees_salary_update_trigger
BEFORE UPDATE OF salary ON employees
FOR EACH ROW
Expand Down
5 changes: 4 additions & 1 deletion testdata/diff/create_trigger/add_trigger/plan.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ Tables:
~ employees
+ employees_insert_timestamp_trigger (trigger)
+ employees_last_modified_trigger (trigger)
~ employees_last_modified_trigger (trigger)
Comment thread
tianzhou marked this conversation as resolved.
+ employees_salary_update_trigger (trigger)
+ employees_truncate_log_trigger (trigger)

Expand All @@ -28,6 +29,8 @@ CREATE OR REPLACE TRIGGER employees_last_modified_trigger
FOR EACH ROW
EXECUTE FUNCTION update_last_modified();

COMMENT ON TRIGGER employees_last_modified_trigger ON employees IS 'Updates last_modified timestamp on every row update';

CREATE OR REPLACE TRIGGER employees_salary_update_trigger
BEFORE UPDATE OF salary ON employees
FOR EACH ROW
Expand All @@ -41,4 +44,4 @@ CREATE OR REPLACE TRIGGER employees_truncate_log_trigger
CREATE OR REPLACE TRIGGER trg_employee_emails_insert
INSTEAD OF INSERT ON employee_emails
FOR EACH ROW
EXECUTE FUNCTION insert_employee_emails();
EXECUTE FUNCTION insert_employee_emails();
Comment thread
tianzhou marked this conversation as resolved.