]> granicus.if.org Git - postgresql/commit
Fix longstanding bug that would sometimes let the planner generate a bad plan
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 25 Oct 2005 20:30:30 +0000 (20:30 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 25 Oct 2005 20:30:30 +0000 (20:30 +0000)
commitddb4015ec03d6850c3ed06aa06e17747ef14e90e
treebafbc990fa7f118605e64f7d1eb0da5735de1b6a
parent62cfa0f75c18822e0b9811d124eae454451a94ed
Fix longstanding bug that would sometimes let the planner generate a bad plan
for an outer join; symptom is bogus error "RIGHT JOIN is only supported with
merge-joinable join conditions".  Problem was that select_mergejoin_clauses
did its tests in the wrong order.  We need to force left join not right join
for a merge join when there are non-mergeable join clauses; but the test for
this only accounted for mergejoinability of the clause operator, and not
whether the left and right Vars were of the proper relations.  Per report
from Jean-Pierre Pelletier.
src/backend/optimizer/path/joinpath.c