Disallow generated columns in COPY WHERE clause
Stored generated columns are not yet computed when the filtering
happens, so we need to prohibit them to avoid incorrect behavior.
Virtual generated columns currently error out ("unexpected virtual
generated column reference"). They could probably work if we expand
them in the right place, but for now let's keep them consistent with
the stored variant. This doesn't change the behavior, it only gives a
nicer error message.
Co-authored-by: jian he <jian.universality@gmail.com>
Reviewed-by: Kirill Reshke <reshkekirill@gmail.com>
Reviewed-by: Masahiko Sawada <sawada.mshk@gmail.com>
Discussion:
https://www.postgresql.org/message-id/flat/CACJufxHb8YPQ095R_pYDr77W9XKNaXg5Rzy-WP525mkq+hRM3g@mail.gmail.com
Branch
------
REL_18_STABLE
Details
-------
https://git.postgresql.org/pg/commitdiff/0f9e0068bc62c98557d93ffeb484231162093304
Modified Files
--------------
src/backend/commands/copy.c | 39 +++++++++++++++++++++++++
src/test/regress/expected/generated_stored.out | 6 ++++
src/test/regress/expected/generated_virtual.out | 6 ++++
src/test/regress/sql/generated_stored.sql | 4 +++
src/test/regress/sql/generated_virtual.sql | 4 +++
5 files changed, 59 insertions(+)