pgsql: Fix CREATE TABLE LIKE INCLUDING GENERATED column order issue - Mailing list pgsql-committers

From Peter Eisentraut
Subject pgsql: Fix CREATE TABLE LIKE INCLUDING GENERATED column order issue
Date
Msg-id E1jMYNd-00087R-5g@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Fix CREATE TABLE LIKE INCLUDING GENERATED column order issue

CREATE TABLE LIKE INCLUDING GENERATED would fail if a generated column
referred to a column with a higher attribute number.  This is because
the column mapping mechanism created the mapping incrementally as
columns are added.  This was sufficient for previous uses of that
mechanism (omitting dropped columns), and it also happened to work if
generated columns only referred to columns with lower attribute
numbers, but here it failed.

This fix is to build the attribute mapping in a separate loop before
processing the columns in detail.

Bug: #16342
Reported-by: Ethan Waldo <ewaldo@healthetechs.com>
Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us>

Branch
------
master

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

Modified Files
--------------
src/backend/parser/parse_utilcmd.c              | 25 ++++++++++++++++++---
src/test/regress/expected/create_table_like.out | 29 +++++++++++++------------
src/test/regress/sql/create_table_like.sql      | 19 ++++++++--------
3 files changed, 47 insertions(+), 26 deletions(-)


pgsql-committers by date:

Previous
From: Fujii Masao
Date:
Subject: pgsql: Fix typo in pg_validatebackup documentation.
Next
From: Tom Lane
Date:
Subject: pgsql: Cosmetic improvements for default text search parser's ts_headli