Alexander Pyhalov писал 2021-05-31 15:39:
Hi.

There's issue with join pushdown after

commit 86dc90056dfdbd9d1b891718d2e5614e3e432f35
Author: Tom Lane <t...@sss.pgh.pa.us>
Date:   Wed Mar 31 11:52:34 2021 -0400

...
You'll get
ERROR:  input of anonymous composite types is not implemented
CONTEXT:  whole-row reference to foreign table "remote_tbl"

make_tuple_from_result_row() (called by fetch_more_data()), will try
to call InputFunctionCall() for ROW(r1.a, r1.b) and will get error in
record_in().

Here ROW(r2.a, r2.b) would have attribute type id, corresponding to
remote_tbl, but ROW(r1.a, r1.b) would have atttypid 2249 (RECORD).


The issue seems to be that add_row_identity_columns() adds RECORD var to the query. Adding var with table's relation type fixes this issue, but breaks update of partitioned tables, as we add "wholerow" with type of one child relation and then
try to use it with another child (of different table type).

--
Best regards,
Alexander Pyhalov,
Postgres Professional


Reply via email to