Richard Guo писал 2022-08-10 08:28: > On Wed, Aug 10, 2022 at 10:15 AM Richard Guo <guofenglinux@gmail.com> > wrote: > >> Currently the outer_plan used in postgresGetForeignPlan() can only >> be >> 'Join' or 'Sort + Join'. I'm wondering whether we can take this >> knowledge into consideration when we fix the outer_plan's tlist, to >> also >> fix the Join's tlist if it is below the Sort node. > > Alternatively, how about we include in the EPQ path's pathtarget > thecolumns required for evaluating the local conditions when we > consider > EPQ paths with pathkeys? Something like attached. > > Thanks > Richard
Hi. Why are we sure that epq_path can provide all vars from restrictinfo?
The local conditions come from the joinrel's restrictlist, which contains all the clauses that syntactically belong at the join level. So I think the join path for EPQ checks should be able to provide all the exprs needed by local_conds.