pgsql: postgres_fdw: Fix join push down with extensions

From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: postgres_fdw: Fix join push down with extensions
Date: 2017-04-26 13:15:35
Message-ID: E1d3Mn9-0005Gp-FX@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

postgres_fdw: Fix join push down with extensions

Objects in an extension are shippable to a foreign server if the
extension is part of the foreign server definition's shippable
extensions list. But this was not properly considered in some cases
when checking whether a join condition can be pushed to a foreign server
and the join condition uses an object from a shippable extension. So
the join would never be pushed down in those cases.

So, the list of extensions needs to be made available in fpinfo of the
relation being considered to be pushed down before any expressions are
assessed for being shippable. Fix foreign_join_ok() to do that for a
join relation.

David Rowley and Ashutosh Bapat, per report from David Rowley

reduced version of patch 332bec1e6096679b04ec9717beb44a858495260f for
backpatch to 9.6, first release with join push down

Branch
------
REL9_6_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/86e640a6941b956d05c0380b754a92050f06bf43

Modified Files
--------------
contrib/postgres_fdw/expected/postgres_fdw.out | 29 ++++++++++++++++++++++++++
contrib/postgres_fdw/postgres_fdw.c | 12 ++++++++---
contrib/postgres_fdw/sql/postgres_fdw.sql | 8 +++++++
3 files changed, 46 insertions(+), 3 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Peter Eisentraut 2017-04-26 14:47:37 Re: pgsql: Workaround for RecoverPreparedTransactions()
Previous Message Bruce Momjian 2017-04-26 10:33:36 pgsql: doc PG10: add Rafia Sabih to parallel index scan item