FDW: ForeignPlan and parameterized paths

From: Ronan Dunklau <rdunklau(at)gmail(dot)com>
To: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: FDW: ForeignPlan and parameterized paths
Date: 2012-12-19 14:57:36
Message-ID: 2203777.1rRRJ3vjOC@ropc
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hello.

I've noticed that, when implementing a FDW, it is difficult to use a plan which
best path is a parameterized path. This comes from the fact that the
parameterized clause is not easily available at plan time.

This is what I understood from how it works:

- The clauses coming from the best path restrictinfo are not available in the
scan_clauses argument to the GetForeignPlan function.

- They are, however, directly available on the path, but at this point the
clauses are of the form InnerVar OPERATOR OuterVar. The outer Var node is then
replaced by a Param node, using the replace_nestloop_params function.

It could be useful to make the "parameterized" version of the clause (in the
form InnerVar OPERATOR Param) available to the fdw at plan time.

Could this be possible ?
Maybe by replacing the clauses on the restrictinfo nodes from the path param
info by the "parameterized" clauses, and then adding these to the scan clauses
passed to GetForeignPlan ?

Regards,

--
Ronan Dunklau

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2012-12-19 15:02:10 Re: Set visibility map bit after HOT prune
Previous Message Jeff Janes 2012-12-19 14:40:54 Re: [PERFORM] Slow query: bitmap scan troubles