Обсуждение: pgsql: Adjust the definition of is_pushed_down so that it's always true

Поиск
Список
Период
Сортировка

pgsql: Adjust the definition of is_pushed_down so that it's always true

От
tgl@postgresql.org (Tom Lane)
Дата:
Log Message:
-----------
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.

Modified Files:
--------------
    pgsql/src/backend/optimizer/plan:
        initsplan.c (r1.130 -> r1.131)

(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/initsplan.c.diff?r1=1.130&r2=1.131)
    pgsql/src/include/nodes:
        relation.h (r1.134 -> r1.135)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/relation.h.diff?r1=1.134&r2=1.135)