pgsql: Fix some planner issues with degenerate outer join clauses.

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Fix some planner issues with degenerate outer join clauses.
Дата
Msg-id E1ZLhbI-0006W8-Sw@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Fix some planner issues with degenerate outer join clauses.

An outer join clause that didn't actually reference the RHS (perhaps only
after constant-folding) could confuse the join order enforcement logic,
leading to wrong query results.  Also, nested occurrences of such things
could trigger an Assertion that on reflection seems incorrect.

Per fuzz testing by Andreas Seltenreich.  The practical use of such cases
seems thin enough that it's not too surprising we've not heard field
reports about it.

This has been broken for a long time, so back-patch to all active branches.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/f69b4b9495269cc4957bac0f10aaada4d4cfa61e

Modified Files
--------------
src/backend/optimizer/path/joinrels.c  |   26 ++++---
src/backend/optimizer/plan/initsplan.c |   18 ++++-
src/test/regress/expected/join.out     |  129 ++++++++++++++++++++++++++++++++
src/test/regress/sql/join.sql          |   50 +++++++++++++
4 files changed, 211 insertions(+), 12 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql: Fix some planner issues with degenerate outer join clauses.
Следующее
От: Tom Lane
Дата:
Сообщение: pgsql: Fix some planner issues with degenerate outer join clauses.