* + if (tdinfo->filtercond || tbinfo->relkind == RELKIND_FOREIGN_TABLE)
filter condition is not implemented completely yet so the logic only work on foreign table so I think its better to handle it separately
Note that there is another if condition that actually applies the the filtercondition if provided, also for a we need to do a COPY SELECT instead of a COPY TO
but we can't supplied where clause in pg_dump yet so filtercondtion is always NULL and the logic became true only on foreign table.
* I don’t understand the need for changing SELECT query .we can use the same SELECT query syntax for both regular table and foreign table
To which query do you refer? In the patch there are three queries: 1 retrieves foreign servers, another is the SELECT in the COPY that now it applies in case of a filter condition of a foreign table, and a third that retrieves the oid of a given foreign server.