pgsql: Fix REINDEX CONCURRENTLY of partitions - Mailing list pgsql-committers

From Peter Eisentraut
Subject pgsql: Fix REINDEX CONCURRENTLY of partitions
Date
Msg-id E1hEpu3-0008SB-BF@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Fix REINDEX CONCURRENTLY of partitions

In case of a partition index, when swapping the old and new index, we
also need to attach the new index as a partition and detach the old
one.  Also, to handle partition indexes, we not only need to change
dependencies referencing the index, but also dependencies of the index
referencing something else.  The previous code did this only
specifically for a constraint, but we also need to do this for
partitioned indexes.  So instead write a generic function that does it
for all dependencies.

Author: Michael Paquier <michael@paquier.xyz>
Author: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
Discussion:
https://www.postgresql.org/message-id/flat/DF4PR8401MB11964EDB77C860078C343BEBEE5A0%40DF4PR8401MB1196.NAMPRD84.PROD.OUTLOOK.COM#154df1fedb735190a773481765f7b874

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/ef6f30fe77af69a8c775cca82bf993b10c9889ee

Modified Files
--------------
src/backend/catalog/index.c                | 40 +++++++-------
src/backend/catalog/pg_depend.c            | 56 ++++++++++++++++++++
src/include/catalog/dependency.h           |  3 ++
src/test/regress/expected/create_index.out | 85 ++++++++++++++++++++++++++++++
src/test/regress/sql/create_index.sql      | 43 +++++++++++++++
5 files changed, 209 insertions(+), 18 deletions(-)


pgsql-committers by date:

Previous
From: Thomas Munro
Date:
Subject: pgsql: Fix GetNewTransactionId()'s interaction with xidVacLimit.
Next
From: Fabien COELHO
Date:
Subject: Re: pgsql: Fix memory leak in pgbench