diff options
Diffstat (limited to 'src/backend/optimizer/path/clausesel.c')
-rw-r--r-- | src/backend/optimizer/path/clausesel.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/backend/optimizer/path/clausesel.c b/src/backend/optimizer/path/clausesel.c index f51bac9b0e8..463408f26fd 100644 --- a/src/backend/optimizer/path/clausesel.c +++ b/src/backend/optimizer/path/clausesel.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/optimizer/path/clausesel.c,v 1.82 2006/10/04 00:29:53 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/optimizer/path/clausesel.c,v 1.82.2.1 2007/08/31 23:35:29 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -218,7 +218,9 @@ clauselist_selectivity(PlannerInfo *root, s2 = rqlist->hibound + rqlist->lobound - 1.0; /* Adjust for double-exclusion of NULLs */ - s2 += nulltestsel(root, IS_NULL, rqlist->var, varRelid); + /* HACK: disable nulltestsel's special outer-join logic */ + s2 += nulltestsel(root, IS_NULL, rqlist->var, + varRelid, JOIN_INNER); /* * A zero or slightly negative s2 should be converted into a @@ -701,7 +703,8 @@ clause_selectivity(PlannerInfo *root, s1 = nulltestsel(root, ((NullTest *) clause)->nulltesttype, (Node *) ((NullTest *) clause)->arg, - varRelid); + varRelid, + jointype); } else if (IsA(clause, BooleanTest)) { |