On Fri, Nov 27, 2015 at 1:25 AM, Kouhei Kaigai <kaigai@ak.jp.nec.com> wrote:
>> Sorry, I don't understand this. In my understanding, fdw_recheck_quals
>> can be defined for a foreign join, regardless of the join type,
>>
> Yes, "can be defined", but will not be workable if either side of
> joined tuple is NULL because of outer join. SQL functions returns
> NULL prior to evaluation, then ExecQual() treats this result as FALSE.
> However, a joined tuple that has NULL fields may be a valid tuple.
>
> We don't need to care about unmatched tuple if INNER JOIN.
This is a really good point, and a very strong argument for the design
KaiGai has chosen here.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company