Re: Errors creating partitioned tables from existing using (LIKE) after renaming table constraints - Mailing list pgsql-bugs
From Michael Paquier
Subject Re: Errors creating partitioned tables from existing using (LIKE) after renaming table constraints
Date
Msg-id 20181216072703.GK5012@paquier.xyz
Whole thread Raw
In response to Re: Errors creating partitioned tables from existing using (LIKE) after renaming table constraints  (Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>)
Responses Re: Errors creating partitioned tables from existing using (LIKE) after renaming table constraints  (Amit Langote <Langote_Amit_f8@lab.ntt.co.jp>)
List pgsql-bugs
On Fri, Dec 14, 2018 at 11:19:16AM +0900, Amit Langote wrote:
> Thank you for looking.  I noticed that the previously posted patch doesn't
> apply as is to branches before 11, so here are the patches that apply to
> 9.4 to 10 branches.

When renaming an attribute, renameatt_internal is in charge of
invalidating the cache by using CacheInvalidateHeapTuple when running
the catalog update in CatalogTupleUpdate.

For constraint renames, we may finish by using RenameConstraintById or
RenameRelationInternal.  And here the constraint is removed by OID where
a invalidation happens for the constraint, but not its parent relation.
In short I agree with your fix and its position, still I think that we
should add a comment why the invalidation needs to happen, with
something simple, like "Invalidate relcache so as others can see the new
constraint name".

I'll try to get that committed tomorrow and back-patched appropriately.
--
Michael

Attachment

pgsql-bugs by date:

Previous
From: Thomas Munro
Date:
Subject: Re: BUG #15548: Unaccent does not remove combining diacritical characters
Next
From: Amit Langote
Date:
Subject: Re: Errors creating partitioned tables from existing using (LIKE) after renaming table constraints