pgsql: Fix parallel restore of FKs to partitioned tables - Mailing list pgsql-committers

From Alvaro Herrera
Subject pgsql: Fix parallel restore of FKs to partitioned tables
Date
Msg-id E1iL0qB-0004Ct-2A@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Fix parallel restore of FKs to partitioned tables

When an FK constraint is created, it needs the index on the referenced
table to exist and be valid.  When doing parallel pg_restore and the
referenced table was partitioned, this condition can sometimes not be
met, because pg_dump didn't emit sufficient object dependencies to
ensure so; this means that parallel pg_restore would fail in certain
conditions.  Fix by having pg_dump make the FK constraint object
dependent on the partition attachment objects for the constraint's
referenced index.

This has been broken since f56f8f8da6af, so backpatch to Postgres 12.

Discussion: https://postgr.es/m/20191005224333.GA9738@alvherre.pgsql

Branch
------
REL_12_STABLE

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

Modified Files
--------------
src/bin/pg_dump/common.c           |  3 +++
src/bin/pg_dump/pg_dump.c          | 42 ++++++++++++++++++++++++++++++++++++--
src/bin/pg_dump/pg_dump.h          |  2 ++
src/fe_utils/simple_list.c         | 21 +++++++++++++++++++
src/include/fe_utils/simple_list.h | 19 ++++++++++++++---
5 files changed, 82 insertions(+), 5 deletions(-)


pgsql-committers by date:

Previous
From: Alvaro Herrera
Date:
Subject: Re: pgsql: Fix bug that could try to freeze running multixacts.
Next
From: Alvaro Herrera
Date:
Subject: pgsql: Fix minor bug in logical-replication walsender shutdown