diff options
-rw-r--r-- | src/backend/commands/trigger.c | 5 | ||||
-rw-r--r-- | src/test/regress/expected/triggers.out | 12 | ||||
-rw-r--r-- | src/test/regress/sql/triggers.sql | 5 |
3 files changed, 17 insertions, 5 deletions
diff --git a/src/backend/commands/trigger.c b/src/backend/commands/trigger.c index 0f2de7e2e0..4b295f8da5 100644 --- a/src/backend/commands/trigger.c +++ b/src/backend/commands/trigger.c @@ -863,11 +863,6 @@ CreateTriggerFiringOn(CreateTrigStmt *stmt, const char *queryString, /* * Build the new pg_trigger tuple. - * - * When we're creating a trigger in a partition, we mark it as internal, - * even though we don't do the isInternal magic in this function. This - * makes the triggers in partitions identical to the ones in the - * partitioned tables, except that they are marked internal. */ memset(nulls, false, sizeof(nulls)); diff --git a/src/test/regress/expected/triggers.out b/src/test/regress/expected/triggers.out index f7301b5213..e8de916dfe 100644 --- a/src/test/regress/expected/triggers.out +++ b/src/test/regress/expected/triggers.out @@ -2718,6 +2718,18 @@ select tgrelid::regclass, tgname, tgenabled from pg_trigger parent | tg_stmt | A (3 rows) +-- This variant malfunctioned in some releases. +alter table parent disable trigger user; +select tgrelid::regclass, tgname, tgenabled from pg_trigger + where tgrelid in ('parent'::regclass, 'child1'::regclass) + order by tgrelid::regclass::text, tgname; + tgrelid | tgname | tgenabled +---------+---------+----------- + child1 | tg | D + parent | tg | D + parent | tg_stmt | D +(3 rows) + drop table parent, child1; -- Check processing of foreign key triggers create table parent (a int primary key, f int references parent) diff --git a/src/test/regress/sql/triggers.sql b/src/test/regress/sql/triggers.sql index 4222a8500b..d29e98d2ac 100644 --- a/src/test/regress/sql/triggers.sql +++ b/src/test/regress/sql/triggers.sql @@ -1881,6 +1881,11 @@ alter table parent enable always trigger tg; select tgrelid::regclass, tgname, tgenabled from pg_trigger where tgrelid in ('parent'::regclass, 'child1'::regclass) order by tgrelid::regclass::text, tgname; +-- This variant malfunctioned in some releases. +alter table parent disable trigger user; +select tgrelid::regclass, tgname, tgenabled from pg_trigger + where tgrelid in ('parent'::regclass, 'child1'::regclass) + order by tgrelid::regclass::text, tgname; drop table parent, child1; -- Check processing of foreign key triggers |