Adjust join_search_one_level's handling of clauseless joins.
For an initial relation that lacks any join clauses (that is, it has to be
cartesian-product-joined to the rest of the query), we considered only
cartesian joins with initial rels appearing later in the initial-relations
list. This creates an undesirable dependency on FROM-list order. We would
never fail to find a plan, but perhaps we might not find the best available
plan. Noted while discussing the logic with Amit Kapila.
Improve the comments a bit in this area, too.
Arguably this is a bug fix, but given the lack of complaints from the
field I'll refrain from back-patching.
src/backend/optimizer/path/joinrels.c | 46 +++++++++++++++++++-------------
1 files changed, 27 insertions(+), 19 deletions(-)
pgsql-committers by date
|Next:||From: Alvaro Herrera||Date: 2012-04-21 02:57:47|
|Subject: pgsql: Recast "ONLY" column CHECK constraints as NO INHERIT|
|Previous:||From: Tom Lane||Date: 2012-04-19 19:54:07|
|Subject: pgsql: Revise parameterized-path mechanism to fix assorted issues.|