pgsql: Block creation of partitions with open references to its parent
От | Michael Paquier |
---|---|
Тема | pgsql: Block creation of partitions with open references to its parent |
Дата | |
Msg-id | E1gJUGR-0000yw-PB@gemulon.postgresql.org обсуждение исходный текст |
Список | pgsql-committers |
Block creation of partitions with open references to its parent When a partition is created as part of a trigger processing, it is possible that the partition which just gets created changes the properties of the table the executor of the ongoing command relies on, causing a subsequent crash. This has been found possible when for example using a BEFORE INSERT which creates a new partition for a partitioned table being inserted to. Any attempt to do so is blocked when working on a partition, with regression tests added for both CREATE TABLE PARTITION OF and ALTER TABLE ATTACH PARTITION. Reported-by: Dmitry Shalashov Author: Amit Langote Reviewed-by: Michael Paquier, Tom Lane Discussion: https://postgr.es/m/15437-3fe01ee66bd1bae1@postgresql.org Backpatch-through: 10 Branch ------ REL_10_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/8aad248f7c67f1225027414530ce2809c1fcd104 Modified Files -------------- src/backend/commands/tablecmds.c | 8 ++++++++ src/test/regress/expected/alter_table.out | 18 ++++++++++++++++++ src/test/regress/expected/create_table.out | 16 ++++++++++++++++ src/test/regress/sql/alter_table.sql | 16 ++++++++++++++++ src/test/regress/sql/create_table.sql | 14 ++++++++++++++ 5 files changed, 72 insertions(+)
В списке pgsql-committers по дате отправления: