mirror of
https://git.postgresql.org/git/postgresql.git
synced 2026-02-09 17:17:35 +08:00
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.
This commit is contained in:
@ -1474,6 +1474,7 @@ typedef enum AlterTableType
|
||||
AT_AddConstraint, /* add constraint */
|
||||
AT_AddConstraintRecurse, /* internal to commands/tablecmds.c */
|
||||
AT_ReAddConstraint, /* internal to commands/tablecmds.c */
|
||||
AT_ReAddComment, /* internal to commands/tablecmds.c */
|
||||
AT_AlterConstraint, /* alter constraint */
|
||||
AT_ValidateConstraint, /* validate constraint */
|
||||
AT_ValidateConstraintRecurse, /* internal to commands/tablecmds.c */
|
||||
|
||||
Reference in New Issue
Block a user