diff options
-rw-r--r-- | src/backend/optimizer/path/clausesel.c | 15 | ||||
-rw-r--r-- | src/backend/optimizer/path/indxpath.c | 12 |
2 files changed, 12 insertions, 15 deletions
diff --git a/src/backend/optimizer/path/clausesel.c b/src/backend/optimizer/path/clausesel.c index 78b54eebbb7..54c2c9b831d 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.4 1997/09/08 21:44:47 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/optimizer/path/clausesel.c,v 1.5 1998/02/13 03:29:36 vadim Exp $ * *------------------------------------------------------------------------- */ @@ -273,12 +273,19 @@ compute_selec(Query *root, List *clauses, List *or_selectivities) /* this isn't an Oper, it's a Func!! */ /* - * * This is not an operator, so we guess at the selectivity. * - * THIS IS A HACK TO GET V4 OUT THE DOOR. FUNCS SHOULD BE * ABLE - * TO HAVE SELECTIVITIES THEMSELVES. * -- JMH 7/9/92 + * This is not an operator, so we guess at the selectivity. + * THIS IS A HACK TO GET V4 OUT THE DOOR. FUNCS SHOULD BE ABLE + * TO HAVE SELECTIVITIES THEMSELVES. -- JMH 7/9/92 */ s1 = 0.1; } + else if (is_subplan ((Node *) clause)) + { + /* + * Just for the moment! FIX ME! - vadim 02/04/98 + */ + s1 = 1.0; + } else if (NumRelids((Node *) clause) == 1) { diff --git a/src/backend/optimizer/path/indxpath.c b/src/backend/optimizer/path/indxpath.c index 2fc43e0fdab..50d8fb934eb 100644 --- a/src/backend/optimizer/path/indxpath.c +++ b/src/backend/optimizer/path/indxpath.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/optimizer/path/indxpath.c,v 1.12 1997/11/20 23:21:47 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/optimizer/path/indxpath.c,v 1.13 1998/02/13 03:29:39 vadim Exp $ * *------------------------------------------------------------------------- */ @@ -614,13 +614,8 @@ match_clause_to_indexkey(Rel *rel, /* * Check for standard s-argable clause */ -#ifdef INDEXSCAN_PATCH - /* Handle also function parameters. DZ - 27-8-1996 */ if ((rightop && IsA(rightop, Const)) || (rightop && IsA(rightop, Param))) -#else - if (rightop && IsA(rightop, Const)) -#endif { restrict_op = ((Oper *) ((Expr *) clause)->oper)->opno; isIndexable = @@ -634,13 +629,8 @@ match_clause_to_indexkey(Rel *rel, /* * Must try to commute the clause to standard s-arg format. */ -#ifdef INDEXSCAN_PATCH - /* ...And here... - vadim 01/22/97 */ else if ((leftop && IsA(leftop, Const)) || (leftop && IsA(leftop, Param))) -#else - else if (leftop && IsA(leftop, Const)) -#endif { restrict_op = get_commutator(((Oper *) ((Expr *) clause)->oper)->opno); |