pgsql: Make constraint rename issue relcache invalidation on targetrel - Mailing list pgsql-committers

From Michael Paquier
Subject pgsql: Make constraint rename issue relcache invalidation on targetrel
Date
Msg-id E1gYhrF-0006of-Tv@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Make constraint rename issue relcache invalidation on target relation

When a constraint gets renamed, it may have associated with it a target
relation (for example domain constraints don't have one).  Not
invalidating the target relation cache when issuing the renaming can
result in issues with subsequent commands that refer to the old
constraint name using the relation cache, causing various failures.  One
pattern spotted was using CREATE TABLE LIKE after a constraint
renaming.

Reported-by: Stuart <sfbarbee@gmail.com>
Author: Amit Langote
Reviewed-by: Michael Paquier
Discussion: https://postgr.es/m/2047094.V130LYfLq4@station53.ousa.org

Branch
------
REL9_5_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/5812be7b63cfaf09d982a401ca8f72d150c0f721

Modified Files
--------------
src/backend/commands/tablecmds.c          |  7 +++++++
src/test/regress/expected/alter_table.out | 22 ++++++++++++++++++++++
src/test/regress/sql/alter_table.sql      | 14 ++++++++++++++
3 files changed, 43 insertions(+)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Modernize our code for looking up descriptive strings for Unixs
Next
From: Michael Paquier
Date:
Subject: pgsql: Fix use-after-free bug when renaming constraints