]> granicus.if.org Git - postgresql/commitdiff
If we cannot get a real estimate for the selectivity of a range query,
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 23 Mar 2000 00:58:36 +0000 (00:58 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 23 Mar 2000 00:58:36 +0000 (00:58 +0000)
use a default value that's fairly small.  We were generating a result
of about 0.1, but I think 0.01 is probably better --- want to encourage
use of an indexscan in this situation.

src/backend/optimizer/path/clausesel.c

index 09d6d277c9a87fdb244b379f8b140214454ad2db..baa99a7d28b9fc18671863c084e4f4b917384001 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/optimizer/path/clausesel.c,v 1.31 2000/03/17 02:36:14 tgl Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/optimizer/path/clausesel.c,v 1.32 2000/03/23 00:58:36 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -194,9 +194,11 @@ clauselist_selectivity(Query *root,
                        else
                        {
                                /* One or both is probably a default estimate,
-                                * so punt and just merge them in generically.
+                                * so supply a default estimate for the selectivity
+                                * of the range query.  We rather optimistically assume
+                                * that the range is tight...
                                 */
-                               s1 *= rqlist->hibound * rqlist->lobound;
+                               s1 *= 0.01;
                        }
                }
                else