Fix ALTER TABLE code to update domain constraints when needed.

It's possible for dropping a column, or altering its type, to require
changes in domain CHECK constraint expressions; but the code was
previously only expecting to find dependent table CHECK constraints.
Make the necessary adjustments.

This is a fairly old oversight, but it's a lot easier to encounter
the problem in the context of domains over composite types than it
was before.  Given the lack of field complaints, I'm not going to
bother with a back-patch, though I'd be willing to reconsider that
decision if someone does complain.

Patch by me, reviewed by Michael Paquier

Discussion: https://postgr.es/m/30656.1509128...@sss.pgh.pa.us

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/af20e2d728eb508bb169e7294e4e210a3459833a

Modified Files
--------------
src/backend/commands/tablecmds.c     | 98 ++++++++++++++++++++++++++++++------
src/backend/utils/adt/ruleutils.c    | 67 ++++++++++++++++++++----
src/include/nodes/parsenodes.h       |  1 +
src/test/regress/expected/domain.out | 25 +++++++++
src/test/regress/sql/domain.sql      | 20 ++++++++
5 files changed, 186 insertions(+), 25 deletions(-)


-- 
Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-committers

Reply via email to