aboutsummaryrefslogtreecommitdiff
path: root/src/backend/optimizer/geqo/geqo_eval.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2006-12-12 21:31:02 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2006-12-12 21:31:02 +0000
commitf18c57fdf1dd255cc26c4b6b3d6716c8a54ab890 (patch)
treeb1f24719d0c4d25579aeb07ce141aa292873c2f4 /src/backend/optimizer/geqo/geqo_eval.c
parent0afabecbfdcbcd79c13f150daf180334f6db4b27 (diff)
downloadpostgresql-f18c57fdf1dd255cc26c4b6b3d6716c8a54ab890.tar.gz
postgresql-f18c57fdf1dd255cc26c4b6b3d6716c8a54ab890.zip
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.
Diffstat (limited to 'src/backend/optimizer/geqo/geqo_eval.c')
-rw-r--r--src/backend/optimizer/geqo/geqo_eval.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/backend/optimizer/geqo/geqo_eval.c b/src/backend/optimizer/geqo/geqo_eval.c
index 240672edaf5..197efac4345 100644
--- a/src/backend/optimizer/geqo/geqo_eval.c
+++ b/src/backend/optimizer/geqo/geqo_eval.c
@@ -6,7 +6,7 @@
* Portions Copyright (c) 1996-2006, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/backend/optimizer/geqo/geqo_eval.c,v 1.81 2006/10/24 17:50:22 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/optimizer/geqo/geqo_eval.c,v 1.82 2006/12/12 21:31:02 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -258,7 +258,7 @@ desirable_join(PlannerInfo *root,
/*
* Join if there is an applicable join clause.
*/
- if (have_relevant_joinclause(outer_rel, inner_rel))
+ if (have_relevant_joinclause(root, outer_rel, inner_rel))
return true;
/*