pgsql: Fix missing values when doing ALTER TABLE ALTER COLUMN TYPE

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

pgsql: Fix missing values when doing ALTER TABLE ALTER COLUMN TYPE

Andrew Dunstan
Fix missing values when doing ALTER TABLE ALTER COLUMN TYPE

This was an oversight in commit 16828d5c. If the table is going to be
rewritten, we simply clear all the missing values from all the table's
attributes, since there will no longer be any rows with the attributes
missing. Otherwise, we repackage the missing value in an array
constructed with the new type specifications.

Backpatch to release 11.

This fixes bug #15446, reported by Dmitry Molotkov

Reviewed by Dean Rasheed

Branch
------
REL_11_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/076ffbcb5f45eeffb20940842e0f45bdcb4a32fc

Modified Files
--------------
src/backend/commands/tablecmds.c           | 77 ++++++++++++++++++++++++++++++
src/test/regress/expected/fast_default.out | 37 ++++++++++++++
src/test/regress/sql/fast_default.sql      | 26 ++++++++++
3 files changed, 140 insertions(+)