]> granicus.if.org Git - postgresql/commit
Make constraint rename issue relcache invalidation on target relation
authorMichael Paquier <michael@paquier.xyz>
Mon, 17 Dec 2018 01:34:44 +0000 (10:34 +0900)
committerMichael Paquier <michael@paquier.xyz>
Mon, 17 Dec 2018 01:34:44 +0000 (10:34 +0900)
commitb13fd344c5fce6a2f95b758e97b79eb00adf2731
tree2dd60ace2ee6313cc28cb22193ae9b5b1e09c8fc
parenta73d08319537d807a520a72bc5bd17279672c3de
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
src/backend/commands/tablecmds.c
src/test/regress/expected/alter_table.out
src/test/regress/sql/alter_table.sql