pgsql: Fix FK checks of TRUNCATE involving partitioned tables - Mailing list pgsql-committers

From Alvaro Herrera
Subject pgsql: Fix FK checks of TRUNCATE involving partitioned tables
Date
Msg-id E1fdeQ5-0007F0-1k@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Fix FK checks of TRUNCATE involving partitioned tables

When truncating a table that is referenced by foreign keys in
partitioned tables, the check to ensure the referencing table are also
truncated spuriously failed.  This is because it was relying on
relhastriggers as a proxy for the table having FKs, and that's wrong for
partitioned tables.  Fix it to consider such tables separately.  There
may be a better way ... but this code is pretty inefficient already.

Author: Álvaro Herrera <alvherre@alvh.no-ip.org>
Reviewed-by: Michael Paquiër <michael@paquier.xyz>
Discussion: https://postgr.es/m/20180711000624.zmeizicibxeehhsg@alvherre.pgsql

Branch
------
master

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

Modified Files
--------------
src/backend/catalog/heap.c             |  7 +++-
src/backend/commands/tablecmds.c       |  2 +-
src/test/regress/expected/truncate.out | 75 ++++++++++++++++++++++++++++++++++
src/test/regress/sql/truncate.sql      | 47 +++++++++++++++++++++
4 files changed, 128 insertions(+), 3 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Doc: update documentation for requirement of ORDER BY inGROUPS
Next
From: Tom Lane
Date:
Subject: pgsql: Doc: minor improvement in pl/pgsql FETCH/MOVE documentation.