OSDN Git Service

Fix planner to do the right thing when a degenerate outer join (one whose
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 12 Dec 2006 21:31:02 +0000 (21:31 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 12 Dec 2006 21:31:02 +0000 (21:31 +0000)
commitf18c57fdf1dd255cc26c4b6b3d6716c8a54ab890
treeb1f24719d0c4d25579aeb07ce141aa292873c2f4
parent0afabecbfdcbcd79c13f150daf180334f6db4b27
Fix planner to do the right thing when a degenerate outer join (one whose
joinclause doesn't use any outer-side vars) requires a "bushy" plan to be
created.  The normal heuristic to avoid joins with no joinclause has to be
overridden in that case.  Problem is new in 8.2; before that we forced the
outer join order anyway.  Per example from Teodor.
src/backend/optimizer/geqo/geqo_eval.c
src/backend/optimizer/path/joinrels.c
src/backend/optimizer/util/joininfo.c
src/include/optimizer/joininfo.h