1
0
mirror of https://github.com/postgres/postgres.git synced 2025-06-13 07:41:39 +03:00

Small fixes for Add ALTER TABLE ... ALTER CONSTRAINT ... SET [NO] INHERIT

Small fixes for commit f4e53e10b6: Add missing calls to
InvokeObjectPostAlterHook() and also CacheInvalidateRelcache().  The
former change could have a user-visible effect.  The latter omission
might have caused other bugs, but it is not clear whether one actually
existed.  With these changes, the code is now more consistent with
similar ALTER CONSTRAINT variants, especially the ones that set the
deferrability.

Reviewed-by: Álvaro Herrera <alvherre@alvh.no-ip.org>
Discussion: https://postgr.es/m/CAF1DzPVfOW6Kk=7SSh7LbneQDJWh=PbJrEC_Wkzc24tHOyQWGg@mail.gmail.com
This commit is contained in:
Peter Eisentraut
2025-03-25 13:40:24 +01:00
parent 62f36d6924
commit f4b2a62ae3

View File

@ -12151,10 +12151,16 @@ ATExecAlterConstraintInternal(List **wqueue, ATAlterConstraint *cmdcon,
copy_con->connoinherit = cmdcon->noinherit;
CatalogTupleUpdate(conrel, &copyTuple->t_self, copyTuple);
InvokeObjectPostAlterHook(ConstraintRelationId, currcon->oid, 0);
CommandCounterIncrement();
heap_freetuple(copyTuple);
changed = true;
/* Make new constraint flags visible to others */
CacheInvalidateRelcache(rel);
/* Fetch the column number and name */
colNum = extractNotNullColumn(contuple);
colName = get_attname(currcon->conrelid, colNum, false);