aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorVadim B. Mikheev <vadim4o@yahoo.com>1998-02-13 03:29:39 +0000
committerVadim B. Mikheev <vadim4o@yahoo.com>1998-02-13 03:29:39 +0000
commita3f1c3673fb56752ebb1c6d9bab0706e7f8ae7ac (patch)
tree6c29ea134ce4232c0b3030a4b6ed9b65f394419b /src
parentdc892fd39023ba05cc0c9c349441955e7080e88f (diff)
downloadpostgresql-a3f1c3673fb56752ebb1c6d9bab0706e7f8ae7ac.tar.gz
postgresql-a3f1c3673fb56752ebb1c6d9bab0706e7f8ae7ac.zip
Quite limited support for subselects in clausesel.c.
Get rid of #ifdef INDEXSCAN_PATCH in indxpath.c.
Diffstat (limited to 'src')
-rw-r--r--src/backend/optimizer/path/clausesel.c15
-rw-r--r--src/backend/optimizer/path/indxpath.c12
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);