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