pgsql: Retain comments on indexes and constraints at ALTER TABLE ... TY - Mailing list pgsql-committers

From Heikki Linnakangas
Subject pgsql: Retain comments on indexes and constraints at ALTER TABLE ... TY
Date
Msg-id E1ZEvoc-0002RV-Vh@gemulon.postgresql.org
Whole thread Raw
Responses Re: pgsql: Retain comments on indexes and constraints at ALTER TABLE ... TY
Re: pgsql: Retain comments on indexes and constraints at ALTER TABLE ... TY
List pgsql-committers
Retain comments on indexes and constraints at ALTER TABLE ... TYPE ...

When a column's datatype is changed, ATExecAlterColumnType() rebuilds all
the affected indexes and constraints, and the comments from the old
indexes/constraints were not carried over.

To fix, create a synthetic COMMENT ON command in the work queue, to re-add
any comments on constraints. For indexes, there's a comment field in
IndexStmt that is used.

This fixes bug #13126, reported by Kirill Simonov. Original patch by
Michael Paquier, reviewed by Petr Jelinek and me. This bug is present in
all versions, but only backpatch to 9.5. Given how minor the issue is, it
doesn't seem worth the work and risk to backpatch further than that.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/e42375fc8124e99c33fa330c53c2b4b502fa0baf

Modified Files
--------------
src/backend/commands/tablecmds.c          |   65 ++++++++++++++++++++++++++++-
src/include/nodes/parsenodes.h            |    1 +
src/test/regress/expected/alter_table.out |   63 ++++++++++++++++++++++++++++
src/test/regress/sql/alter_table.sql      |   36 ++++++++++++++++
4 files changed, 163 insertions(+), 2 deletions(-)


pgsql-committers by date:

Previous
From: Heikki Linnakangas
Date:
Subject: pgsql: Reformat code in ATPostAlterTypeParse.
Next
From: Tom Lane
Date:
Subject: Re: pgsql: Retain comments on indexes and constraints at ALTER TABLE ... TY