pgsql: Disallow ALTER TABLE ONLY / DROP EXPRESSION - Mailing list pgsql-committers

From Peter Eisentraut
Subject pgsql: Disallow ALTER TABLE ONLY / DROP EXPRESSION
Date
Msg-id E1kZxeA-0003tq-OA@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Disallow ALTER TABLE ONLY / DROP EXPRESSION

The current implementation cannot handle this correctly, so just
forbid it for now.

GENERATED clauses must be attached to the column definition and cannot
be added later like DEFAULT, so if a child table has a generation
expression that the parent does not have, the child column will
necessarily be an attlocal column.  So to implement ALTER TABLE ONLY /
DROP EXPRESSION, we'd need extra code to update attislocal of the
direct child tables, somewhat similar to how DROP COLUMN does it, so
that the resulting state can be properly dumped and restored.

Discussion: https://www.postgresql.org/message-id/flat/15830.1575468847%40sss.pgh.pa.us

Branch
------
master

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

Modified Files
--------------
src/backend/commands/tablecmds.c        | 22 +++++++++++++++++++---
src/test/regress/expected/generated.out | 11 ++++++-----
src/test/regress/sql/generated.sql      |  2 +-
3 files changed, 26 insertions(+), 9 deletions(-)


pgsql-committers by date:

Previous
From: Peter Eisentraut
Date:
Subject: pgsql: Remove deprecated containment operators for built-in types
Next
From: Tom Lane
Date:
Subject: pgsql: Allow users with BYPASSRLS to alter their own passwords.