Use the properly transformed RangeVar for expandTableLikeClause().
authorTom Lane <[email protected]>
Sun, 13 Sep 2020 16:51:21 +0000 (12:51 -0400)
committerTom Lane <[email protected]>
Sun, 13 Sep 2020 16:51:21 +0000 (12:51 -0400)
commit19f5a37b9fc48a12c77edafb732543875da2f4a3
tree7f99e3c64510cbf4ee48bea10e181da1b1b3960e
parent03c7f1f37a1f3bb69e348f915296af2289257e89
Use the properly transformed RangeVar for expandTableLikeClause().

transformCreateStmt() adjusts the transformed statement's RangeVar
to specify the target schema explicitly, for the express reason
of making sure that auxiliary statements derived by parse
transformation operate on the right table.  But the refactoring
I did in commit 502898192 got this wrong and passed the untransformed
RangeVar to expandTableLikeClause().  This could lead to assertion
failures or weird misbehavior if the wrong table was accessed.

Per report from Alexander Lakhin.  Like the previous patch, back-patch
to all supported branches.

Discussion: https://postgr.es/m/05051f9d-b32b-cb35-6735-0e9f2ab86b5f@gmail.com
src/backend/tcop/utility.c
src/test/regress/expected/create_table_like.out
src/test/regress/sql/create_table_like.sql