aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>1998-11-09 02:49:13 +0000
committerBruce Momjian <bruce@momjian.us>1998-11-09 02:49:13 +0000
commitf03729c62178890fab5ab33d721c70d3f474c512 (patch)
tree4f11fbebdfd1c3b317820ccc8ad6551a8eaf2bc4 /src
parent39792e5b01b5e500432b2624f764b138fdc3871a (diff)
downloadpostgresql-f03729c62178890fab5ab33d721c70d3f474c512.tar.gz
postgresql-f03729c62178890fab5ab33d721c70d3f474c512.zip
Fix for NOT in where clause causing crash.
Diffstat (limited to 'src')
-rw-r--r--src/backend/optimizer/path/clausesel.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/backend/optimizer/path/clausesel.c b/src/backend/optimizer/path/clausesel.c
index 8a0536c7bbe..0bdca62893f 100644
--- a/src/backend/optimizer/path/clausesel.c
+++ b/src/backend/optimizer/path/clausesel.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/optimizer/path/clausesel.c,v 1.13 1998/09/01 04:29:29 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/optimizer/path/clausesel.c,v 1.14 1998/11/09 02:49:13 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -254,6 +254,11 @@ compute_selec(Query *root, List *clauses, List *or_selectivities)
*/
s1 = 0.1;
}
+ else if (not_clause((Node *) clause))
+ {
+ /* negate this baby */
+ return 1 - compute_selec(root, ((Expr *)clause)->args, or_selectivities);
+ }
else if (is_subplan((Node *) clause))
{