pgsql: Fix handling of inherited check constraints in ALTER COLUMN TYPE

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Fix handling of inherited check constraints in ALTER COLUMN TYPE
Date: 2012-11-05 18:37:05
Message-ID: E1TVRXl-0006s1-Tp@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix handling of inherited check constraints in ALTER COLUMN TYPE.

This case got broken in 8.4 by the addition of an error check that
complains if ALTER TABLE ONLY is used on a table that has children.
We do use ONLY for this situation, but it's okay because the necessary
recursion occurs at a higher level. So we need to have a separate
flag to suppress recursion without making the error check.

Reported and patched by Pavan Deolasee, with some editorial adjustments by
me. Back-patch to 8.4, since this is a regression of functionality that
worked in earlier branches.

Branch
------
REL8_4_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/4fa38136f7468ac3377a0041808bfb1d3e851d23

Modified Files
--------------
src/backend/commands/tablecmds.c | 39 +++++++++++++++++++++++------
src/include/nodes/parsenodes.h | 4 ++-
src/test/regress/expected/alter_table.out | 21 +++++++++++++++
src/test/regress/sql/alter_table.sql | 7 +++++
4 files changed, 62 insertions(+), 9 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Bruce Momjian 2012-11-06 19:29:01 pgsql: In pg_upgrade, set synchronous_commit=off for the new cluster, t
Previous Message User Fxjr 2012-11-04 23:09:37 npgsql - Npgsql2: Fixed test data insertion and function creation