pg_restore with --disable-triggers discards ENABLE ALWAYS
От | Duncan Sands |
---|---|
Тема | pg_restore with --disable-triggers discards ENABLE ALWAYS |
Дата | |
Msg-id | d374b6fc-4217-48a9-8639-2c9b4d3a92d0@deepbluecap.com обсуждение исходный текст |
Ответы |
Re: pg_restore with --disable-triggers discards ENABLE ALWAYS
|
Список | pgsql-bugs |
This is with postgresql version 16.4. You can reproduce as follows: CREATE TABLE test_table(x int); CREATE FUNCTION test_function() RETURNS trigger AS $$ BEGIN RETURN NULL; END; $$ LANGUAGE plpgsql; CREATE TRIGGER test_trigger AFTER UPDATE ON test_table FOR EACH ROW EXECUTE FUNCTION test_function(); ALTER TABLE test_table ENABLE ALWAYS TRIGGER test_trigger; Checking the table: duncan=> \d test_table Table "public.test_table" Column | Type | Collation | Nullable | Default --------+---------+-----------+----------+--------- x | integer | | | Triggers firing always: test_trigger AFTER UPDATE ON test_table FOR EACH ROW EXECUTE FUNCTION test_function() ^ Observe "Triggers firing always". Now for the dump + restore: pg_dump -f dump.custom -Fc --table test_table pg_restore --data-only --disable-triggers --dbname duncan dump.custom Checking the table: duncan=> \d test_table Table "public.test_table" Column | Type | Collation | Nullable | Default --------+---------+-----------+----------+--------- x | integer | | | Triggers: test_trigger AFTER UPDATE ON test_table FOR EACH ROW EXECUTE FUNCTION test_function() ^ Observe that "Triggers firing always" has disappeared. Best wishes, Duncan.
В списке pgsql-bugs по дате отправления: