aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/selfuncs.c
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>1997-02-07 16:24:12 +0000
committerBruce Momjian <bruce@momjian.us>1997-02-07 16:24:12 +0000
commit2300ac0dc4fc5702a6a693fdd769be8784314882 (patch)
treea32cf00233cf76654a5fd35fc52f873c28d4becf /src/backend/utils/adt/selfuncs.c
parent4c0faba0febc28b865e4eeaebbef244e060cc1d6 (diff)
downloadpostgresql-2300ac0dc4fc5702a6a693fdd769be8784314882.tar.gz
postgresql-2300ac0dc4fc5702a6a693fdd769be8784314882.zip
Add attribute optimization statistics.
Diffstat (limited to 'src/backend/utils/adt/selfuncs.c')
-rw-r--r--src/backend/utils/adt/selfuncs.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/backend/utils/adt/selfuncs.c b/src/backend/utils/adt/selfuncs.c
index c8d7bf49ec5..769024bd427 100644
--- a/src/backend/utils/adt/selfuncs.c
+++ b/src/backend/utils/adt/selfuncs.c
@@ -12,7 +12,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/selfuncs.c,v 1.4 1996/11/03 06:53:08 scrappy Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/selfuncs.c,v 1.5 1997/02/07 16:23:39 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -33,6 +33,7 @@
#include "utils/lsyscache.h" /* for get_oprrest() */
#include "catalog/pg_statistic.h"
+#include "commands/vacuum.h" /* for ATTNVALS_SCALE */
/* N is not a valid var/constant or relation id */
#define NONVALUE(N) ((N) == -1)
@@ -68,7 +69,7 @@ eqsel(Oid opid,
if (nvals == 0)
*result = 0.0;
else
- *result = 1.0 / nvals;
+ *result = ((float64data)nvals) / ((float64data)ATTNVALS_SCALE);
}
return(result);
}
@@ -125,7 +126,7 @@ intltsel(Oid opid,
if (nvals == 0)
*result = 1.0 / 3.0;
else
- *result = 3.0 / nvals;
+ *result = 3.0 * ((float64data)nvals) / ((float64data)ATTNVALS_SCALE);
}else {
bottom = high - low;
if (bottom == 0)
@@ -192,7 +193,7 @@ eqjoinsel(Oid opid,
if (max == 0)
*result = 1.0;
else
- *result = 1.0 / max;
+ *result = ((float64data)max) / ((float64data)ATTNVALS_SCALE);
}
return(result);
}