On 2015/12/11 2:21, Robert Haas wrote:
On Tue, Dec 8, 2015 at 6:16 AM, Etsuro Fujita
<fujita.ets...@lab.ntt.co.jp> wrote:
Attached is a small patch to adjust a comment in setrefs.c; in
set_foreignscan_references, fdw_recheck_quals also gets adjusted to
reference foreign scan tuple, in case of a foreign join, so I added
"etc.", to a comment there, as the comment in case of a simple foreign
table scan.
Doesn't apply any more. I suppose we could sync up the similar
comments in set_customscan_references() too. But to be honest I'm not
sure this is adding any clarity. "etc." may not be the least
informative thing you can put in a comment, but it's pretty close.
The point in the previous patch was to update the list of expressions to
be adjusted for the case of scanrelid=0 like that for the case of
scanrelid>0 case in set_foreignscan_references. So, I'd like to propose
to add *fdw_recheck_quals* to both lists, then. Updated patch attached.
Best regards,
Etsuro Fujita
*** a/src/backend/optimizer/plan/setrefs.c
--- b/src/backend/optimizer/plan/setrefs.c
***************
*** 1108,1114 **** set_foreignscan_references(PlannerInfo *root,
if (fscan->fdw_scan_tlist != NIL || fscan->scan.scanrelid == 0)
{
! /* Adjust tlist, qual, fdw_exprs to reference foreign scan tuple */
indexed_tlist *itlist = build_tlist_index(fscan->fdw_scan_tlist);
fscan->scan.plan.targetlist = (List *)
--- 1108,1117 ----
if (fscan->fdw_scan_tlist != NIL || fscan->scan.scanrelid == 0)
{
! /*
! * Adjust tlist, qual, fdw_exprs, fdw_recheck_quals to reference
! * foreign scan tuple
! */
indexed_tlist *itlist = build_tlist_index(fscan->fdw_scan_tlist);
fscan->scan.plan.targetlist = (List *)
***************
*** 1142,1148 **** set_foreignscan_references(PlannerInfo *root,
}
else
{
! /* Adjust tlist, qual, fdw_exprs, etc. in the standard way */
fscan->scan.plan.targetlist =
fix_scan_list(root, fscan->scan.plan.targetlist, rtoffset);
fscan->scan.plan.qual =
--- 1145,1154 ----
}
else
{
! /*
! * Adjust tlist, qual, fdw_exprs, fdw_recheck_quals in the standard
! * way
! */
fscan->scan.plan.targetlist =
fix_scan_list(root, fscan->scan.plan.targetlist, rtoffset);
fscan->scan.plan.qual =
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers