Adjust the definition of is_pushed_down so that it's always true for INNER
authorTom Lane <[email protected]>
Fri, 16 Feb 2007 20:57:26 +0000 (20:57 +0000)
committerTom Lane <[email protected]>
Fri, 16 Feb 2007 20:57:26 +0000 (20:57 +0000)
commita295b206adc96e1711c7530355cde1f06366df14
treef780ce67f9aba6aa5ec7776db3ee2ebc8f4626c6
parentdcf5aac9568d4f5458e757db258a2ae17f7b2e41
Adjust the definition of is_pushed_down so that it's always true for INNER
JOIN quals, just like WHERE quals, even if they reference every one of the
join's relations.  Now that we can reorder outer and inner joins, it's
possible for such a qual to end up being assigned to an outer join plan node,
and we mustn't have it treated as a join qual rather than a filter qual for
the node.  (If it were, the join could produce null-extended rows that it
shouldn't.)  Per bug report from Pelle Johansson.
src/backend/optimizer/plan/initsplan.c
src/include/nodes/relation.h