]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Disallow ALTER TABLE ONLY / DROP EXPRESSION
authorPeter Eisentraut <peter@eisentraut.org>
Tue, 3 Nov 2020 14:14:50 +0000 (15:14 +0100)
committerPeter Eisentraut <peter@eisentraut.org>
Tue, 3 Nov 2020 14:28:36 +0000 (15:28 +0100)
commit53977598174652dcb06bc2b26674c29b9ae601cc
treede208ba17a74617dabb301bfc8a3bd1f28963413
parenta58a631b4af0c027c07ea7cc4110a60b5f279ddf
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
src/backend/commands/tablecmds.c
src/test/regress/expected/generated.out
src/test/regress/sql/generated.sql