Обсуждение: pgsql: Fix failure when creating cloned indexes for a partition

Поиск
Список
Период
Сортировка

pgsql: Fix failure when creating cloned indexes for a partition

От
Michael Paquier
Дата:
Fix failure when creating cloned indexes for a partition

When using CREATE TABLE for a new partition, the partitioned indexes of
the parent are created automatically in a fashion similar to LIKE
INDEXES.  The new partition and its parent use a mapping for attribute
numbers for this operation, and while the mapping was correctly built,
its length was defined as the number of attributes of the newly-created
child, and not the parent.  If the parent includes dropped columns, this
could cause failures.

This is wrong since 8b08f7d which has introduced the concept of
partitioned indexes, so backpatch down to 11.

Reported-by: Wyatt Alt
Author: Michael Paquier
Reviewed-by: Amit Langote
Discussion: https://postgr.es/m/CAGem3qCcRmhbs4jYMkenYNfP2kEusDXvTfw-q+eOhM0zTceG-g@mail.gmail.com
Backpatch-through: 11

Branch
------
REL_12_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/7963c4c4b7821f286e335c8aed66821c87404ce3

Modified Files
--------------
src/backend/commands/tablecmds.c           |  2 +-
src/test/regress/expected/create_table.out | 49 ++++++++++++++++++++++++++++++
src/test/regress/sql/create_table.sql      | 23 ++++++++++++++
3 files changed, 73 insertions(+), 1 deletion(-)