Make constraint rename issue relcache invalidation on target relation
Michael Paquier <michael@paquier.xyz>
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
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/commands/tablecmds.c | modified | +7 −0 |
| src/test/regress/expected/alter_table.out | modified | +22 −0 |
| src/test/regress/sql/alter_table.sql | modified | +14 −0 |
Discussion
- Errors creating partitioned tables from existing using (LIKE <table>) after renaming table constraints 12 messages · 2018-12-12 → 2018-12-17