]> granicus.if.org Git - postgresql/commitdiff
Convert effective_cache_size to an integer, for better integration with
authorPeter Eisentraut <peter_e@gmx.net>
Wed, 26 Jul 2006 11:35:56 +0000 (11:35 +0000)
committerPeter Eisentraut <peter_e@gmx.net>
Wed, 26 Jul 2006 11:35:56 +0000 (11:35 +0000)
upcoming units feature.

doc/src/sgml/config.sgml
src/backend/optimizer/path/costsize.c
src/backend/utils/misc/guc.c
src/include/optimizer/cost.h

index e967b235f3678028325ce0e5662512e072ddac8f..45350ac7ae9c099bb340a0e9bd852cc7c53257d8 100644 (file)
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/config.sgml,v 1.69 2006/07/25 03:51:21 tgl Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/config.sgml,v 1.70 2006/07/26 11:35:55 petere Exp $ -->
 
 <chapter Id="runtime-config">
   <title>Server Configuration</title>
@@ -1856,7 +1856,7 @@ archive_command = 'copy "%p" /mnt/server/archivedir/"%f"'  # Windows
      </varlistentry>
      
      <varlistentry id="guc-effective-cache-size" xreflabel="effective_cache_size">
-      <term><varname>effective_cache_size</varname> (<type>floating point</type>)</term>
+      <term><varname>effective_cache_size</varname> (<type>integer</type>)</term>
       <indexterm>
        <primary><varname>effective_cache_size</> configuration parameter</primary>
       </indexterm>
index 14350a90f7a0407fef4a96d41739772a18ac687d..5f5e9ec37219b7a1066337cf120c930d49e2554f 100644 (file)
@@ -54,7 +54,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/backend/optimizer/path/costsize.c,v 1.163 2006/07/22 15:41:55 tgl Exp $
+ *       $PostgreSQL: pgsql/src/backend/optimizer/path/costsize.c,v 1.164 2006/07/26 11:35:56 petere Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -92,7 +92,7 @@ double                cpu_tuple_cost = DEFAULT_CPU_TUPLE_COST;
 double         cpu_index_tuple_cost = DEFAULT_CPU_INDEX_TUPLE_COST;
 double         cpu_operator_cost = DEFAULT_CPU_OPERATOR_COST;
 
-double         effective_cache_size = DEFAULT_EFFECTIVE_CACHE_SIZE;
+int            effective_cache_size = DEFAULT_EFFECTIVE_CACHE_SIZE;
 
 Cost           disable_cost = 100000000.0;
 
@@ -393,7 +393,7 @@ index_pages_fetched(double tuples_fetched, BlockNumber pages,
        T = (pages > 1) ? (double) pages : 1.0;
 
        /* b is pro-rated share of effective_cache_size */
-       b = effective_cache_size * T / (T + (double) other_pages);
+       b = (double) effective_cache_size * T / (T + (double) other_pages);
        /* force it positive and integral */
        if (b <= 1.0)
                b = 1.0;
index 400a267e704a929716da0e62e03c5ce658700ba3..cf38490d9e3b4e6e7fe8fb76755cb22c1149f464 100644 (file)
@@ -10,7 +10,7 @@
  * Written by Peter Eisentraut <peter_e@gmx.net>.
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.329 2006/07/25 03:51:21 tgl Exp $
+ *       $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.330 2006/07/26 11:35:56 petere Exp $
  *
  *--------------------------------------------------------------------
  */
@@ -1579,6 +1579,17 @@ static struct config_int ConfigureNamesInt[] =
                0, 0, INT_MAX, NULL, NULL
        },
 
+       {
+               {"effective_cache_size", PGC_USERSET, QUERY_TUNING_COST,
+                       gettext_noop("Sets the planner's assumption about size of the disk cache."),
+                       gettext_noop("That is, the portion of the kernel's disk cache that "
+                                                "will be used for PostgreSQL data files. This is measured in disk "
+                                                "pages, which are normally 8 kB each.")
+               },
+               &effective_cache_size,
+               DEFAULT_EFFECTIVE_CACHE_SIZE, 1, INT_MAX, NULL, NULL
+       },
+
        /* End-of-list marker */
        {
                {NULL, 0, 0, NULL, NULL}, NULL, 0, 0, 0, NULL, NULL
@@ -1634,17 +1645,6 @@ static struct config_real ConfigureNamesReal[] =
                DEFAULT_CPU_OPERATOR_COST, 0, DBL_MAX, NULL, NULL
        },
 
-       {
-               {"effective_cache_size", PGC_USERSET, QUERY_TUNING_COST,
-                       gettext_noop("Sets the planner's assumption about size of the disk cache."),
-                       gettext_noop("That is, the portion of the kernel's disk cache that "
-                                                "will be used for PostgreSQL data files. This is measured in disk "
-                                                "pages, which are normally 8 kB each.")
-               },
-               &effective_cache_size,
-               DEFAULT_EFFECTIVE_CACHE_SIZE, 1, DBL_MAX, NULL, NULL
-       },
-
        {
                {"geqo_selection_bias", PGC_USERSET, QUERY_TUNING_GEQO,
                        gettext_noop("GEQO: selective pressure within the population."),
index fe8f7097e47c2c01cec8af1ced7e2610dc243881..27928b89a53c68fd83faf0ca13854d8f3808c74d 100644 (file)
@@ -7,7 +7,7 @@
  * Portions Copyright (c) 1996-2006, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $PostgreSQL: pgsql/src/include/optimizer/cost.h,v 1.77 2006/07/22 15:41:56 tgl Exp $
+ * $PostgreSQL: pgsql/src/include/optimizer/cost.h,v 1.78 2006/07/26 11:35:56 petere Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -27,7 +27,7 @@
 #define DEFAULT_CPU_INDEX_TUPLE_COST 0.005
 #define DEFAULT_CPU_OPERATOR_COST  0.0025
 
-#define DEFAULT_EFFECTIVE_CACHE_SIZE  1000.0   /* measured in pages */
+#define DEFAULT_EFFECTIVE_CACHE_SIZE  1000     /* measured in pages */
 
 
 /*
@@ -41,7 +41,7 @@ extern DLLIMPORT double random_page_cost;
 extern DLLIMPORT double cpu_tuple_cost;
 extern DLLIMPORT double cpu_index_tuple_cost;
 extern DLLIMPORT double cpu_operator_cost;
-extern DLLIMPORT double effective_cache_size;
+extern DLLIMPORT int effective_cache_size;
 extern Cost disable_cost;
 extern bool enable_seqscan;
 extern bool enable_indexscan;