pgsql: Whole-row fixes for ALTER COLUMN SET EXPRESSION

From: Peter Eisentraut <peter(at)eisentraut(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Whole-row fixes for ALTER COLUMN SET EXPRESSION
Date: 2026-07-08 17:58:34
Message-ID: E1whWXa-000AxE-0C@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Whole-row fixes for ALTER COLUMN SET EXPRESSION

When changing the expression of a generated column via ALTER TABLE
ALTER COLUMN SET EXPRESSION, objects that depend on the column via
indirect whole-row references (such as CHECK constraints, indexes)
must be handled specially, because technically pg_depend does not
contain such dependencies, see
recordDependencyOnSingleRelExpr->find_expr_references_walker.

This is a fix for commit f80bedd52, "Allow ALTER COLUMN SET EXPRESSION
on virtual columns with CHECK constraints".

Author: jian he <jian(dot)universality(at)gmail(dot)com>
Co-authored-by: Peter Eisentraut <peter(at)eisentraut(dot)org>
Reported-by: Ayush Tiwari <ayushtiwari(dot)slg01(at)gmail(dot)com>
Reviewed-by: Ayush Tiwari <ayushtiwari(dot)slg01(at)gmail(dot)com>
Reviewed-by: solai v <solai(dot)cdac(at)gmail(dot)com>
Reviewed-by: Zsolt Parragi <zsolt(dot)parragi(at)percona(dot)com>
Discussion: https://www.postgresql.org/message-id/flat/CAJTYsWXOkyeDVbzymWc9sKrq7Y_MUv6XJXN4H9GfsBOPd3NJ+w(at)mail(dot)gmail(dot)com

Branch
------
REL_19_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/9530898940302d6f501fb54a3fbc61cbfb7768bf

Modified Files
--------------
src/backend/commands/tablecmds.c | 176 ++++++++++++++++++++++++
src/test/regress/expected/generated_stored.out | 9 ++
src/test/regress/expected/generated_virtual.out | 9 ++
src/test/regress/sql/generated_stored.sql | 10 ++
src/test/regress/sql/generated_virtual.sql | 10 ++
5 files changed, 214 insertions(+)

Browse pgsql-committers by date

  From Date Subject
Next Message Alexander Korotkov 2026-07-08 18:00:00 pgsql: Move WAIT_FOR_WAL_* wait events from Client to IPC class
Previous Message Heikki Linnakangas 2026-07-08 17:43:01 pgsql: Refactor how some aux processes advertise their ProcNumber