Turn autovacuum on by default. (stats_row_level is also on by default.)
authorPeter Eisentraut
Mon, 28 Aug 2006 13:37:18 +0000 (13:37 +0000)
committerPeter Eisentraut
Mon, 28 Aug 2006 13:37:18 +0000 (13:37 +0000)
Threshold and scale factor are cut in half for more aggressive behavior.

doc/src/sgml/config.sgml
doc/src/sgml/maintenance.sgml
src/backend/utils/misc/guc.c
src/backend/utils/misc/postgresql.conf.sample

index 11df2267873ef0935757c951022f66581d95716d..082efc9e7b797275927690ea133554d3cbe5eb01 100644 (file)
@@ -1,4 +1,4 @@
-
+
 
 
   Server Configuration
@@ -383,7 +383,7 @@ SET ENABLE_SEQSCAN TO OFF;
        
 
        
-        The default value is 2. The value must be less than the value of
+        The default value is 3. The value must be less than the value of
         max_connections. This parameter can only be
         set at server start.
        
@@ -2990,7 +2990,8 @@ SELECT * FROM parent WHERE key = 2400;
       
        
         Enables the collection of row-level statistics on database
-        activity. This parameter is off by default.
+        activity. This parameter is on by default, because the autovacuum
+        daemon needs the collected information.
         Only superusers can change this setting.
        
       
@@ -3113,7 +3114,7 @@ SELECT * FROM parent WHERE key = 2400;
        
         Specifies the minimum number of updated or deleted tuples needed
         to trigger a VACUUM in any one table.
-        The default is 1000.
+        The default is 500.
         This parameter can only be set in the postgresql.conf
         file or on the server command line.
         This setting can be overridden for individual tables by entries in
@@ -3131,7 +3132,7 @@ SELECT * FROM parent WHERE key = 2400;
        
         Specifies the minimum number of inserted, updated or deleted tuples
         needed to trigger an ANALYZE in any one table.
-        The default is 500.
+        The default is 250.
         This parameter can only be set in the postgresql.conf
         file or on the server command line.
         This setting can be overridden for individual tables by entries in
@@ -3150,7 +3151,7 @@ SELECT * FROM parent WHERE key = 2400;
         Specifies a fraction of the table size to add to
         autovacuum_vacuum_threshold
         when deciding whether to trigger a VACUUM.
-        The default is 0.4.
+        The default is 0.2.
         This parameter can only be set in the postgresql.conf
         file or on the server command line.
         This setting can be overridden for individual tables by entries in
@@ -3169,7 +3170,7 @@ SELECT * FROM parent WHERE key = 2400;
         Specifies a fraction of the table size to add to
         autovacuum_analyze_threshold
         when deciding whether to trigger an ANALYZE.
-        The default is 0.2.
+        The default is 0.1.
         This parameter can only be set in the postgresql.conf
         file or on the server command line.
         This setting can be overridden for individual tables by entries in
index 20a42c5b5348916a8435eab7d4f184f5103d10c5..9eaa4ad6da0a2f0e6068bc0d0ab8a8164256ef26 100644 (file)
@@ -1,4 +1,4 @@
-
+
 
 
  Routine Database Maintenance Tasks
@@ -447,14 +447,14 @@ HINT:  Stop the postmaster and use a standalone backend to VACUUM in "mydb".
   
 
   
-   The auto-vacuum daemon
+   The autovacuum daemon
 
    
     autovacuum
     general information
    
    
-    Beginning in PostgreSQL  8.1, there is a
+    There is a
     separate optional server process called the autovacuum
     daemon, whose purpose is to automate the execution of
     VACUUM and ANALYZE  commands.
@@ -465,7 +465,9 @@ HINT:  Stop the postmaster and use a standalone backend to VACUUM in "mydb".
     linkend="guc-stats-start-collector"> and 
     linkend="guc-stats-row-level"> are set to true.  Also,
     it's important to allow a slot for the autovacuum process when choosing
-    the value of .
+    the value of .  In
+    the default configuration, autovacuuming is enabled and the related
+    configuration parameters are appropriately set.
    
 
    
index 208231ecd5cce8b2ca2a7b425df5929d0f227637..e6135bc8e75770cfb547790033bc703eb6eafdfc 100644 (file)
@@ -10,7 +10,7 @@
  * Written by Peter Eisentraut .
  *
  * IDENTIFICATION
- *   $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.343 2006/08/17 23:04:06 tgl Exp $
+ *   $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.344 2006/08/28 13:37:18 petere Exp $
  *
  *--------------------------------------------------------------------
  */
@@ -707,7 +707,7 @@ static struct config_bool ConfigureNamesBool[] =
            NULL
        },
        &pgstat_collect_tuplelevel,
-       false, NULL, NULL
+       true, NULL, NULL
    },
    {
        {"stats_block_level", PGC_SUSET, STATS_COLLECTOR,
@@ -744,7 +744,7 @@ static struct config_bool ConfigureNamesBool[] =
            NULL
        },
        &autovacuum_start_daemon,
-       false, NULL, NULL
+       true, NULL, NULL
    },
 
    {
@@ -1138,7 +1138,7 @@ static struct config_int ConfigureNamesInt[] =
            NULL
        },
        &ReservedBackends,
-       2, 0, INT_MAX / 4, NULL, NULL
+       3, 0, INT_MAX / 4, NULL, NULL
    },
 
    {
@@ -1563,7 +1563,7 @@ static struct config_int ConfigureNamesInt[] =
            NULL
        },
        &autovacuum_vac_thresh,
-       1000, 0, INT_MAX, NULL, NULL
+       500, 0, INT_MAX, NULL, NULL
    },
    {
        {"autovacuum_analyze_threshold", PGC_SIGHUP, AUTOVACUUM,
@@ -1571,7 +1571,7 @@ static struct config_int ConfigureNamesInt[] =
            NULL
        },
        &autovacuum_anl_thresh,
-       500, 0, INT_MAX, NULL, NULL
+       250, 0, INT_MAX, NULL, NULL
    },
 
    {
@@ -1726,7 +1726,7 @@ static struct config_real ConfigureNamesReal[] =
            NULL
        },
        &autovacuum_vac_scale,
-       0.4, 0.0, 100.0, NULL, NULL
+       0.2, 0.0, 100.0, NULL, NULL
    },
    {
        {"autovacuum_analyze_scale_factor", PGC_SIGHUP, AUTOVACUUM,
@@ -1734,7 +1734,7 @@ static struct config_real ConfigureNamesReal[] =
            NULL
        },
        &autovacuum_anl_scale,
-       0.2, 0.0, 100.0, NULL, NULL
+       0.1, 0.0, 100.0, NULL, NULL
    },
 
    /* End-of-list marker */
index fcb81d711882a8ad163eaa67abb547f7bef76588..2793b1e70df14a04658cbb567345372c0d538ebd 100644 (file)
@@ -59,7 +59,7 @@
 # Note: increasing max_connections costs ~400 bytes of shared memory per 
 # connection slot, plus lock space (see max_locks_per_transaction).  You
 # might also need to raise shared_buffers to support more connections.
-#superuser_reserved_connections = 2    # (change requires restart)
+#superuser_reserved_connections = 3    # (change requires restart)
 #unix_socket_directory = ''        # (change requires restart)
 #unix_socket_group = ''            # (change requires restart)
 #unix_socket_permissions = 0777        # octal
 #stats_start_collector = on        # needed for block or row stats
                    # (change requires restart)
 #stats_block_level = off
-#stats_row_level = off
+#stats_row_level = on
 #stats_reset_on_server_start = off # (change requires restart)
 
 
 # AUTOVACUUM PARAMETERS
 #---------------------------------------------------------------------------
 
-#autovacuum = off          # enable autovacuum subprocess?
+#autovacuum = o          # enable autovacuum subprocess?
 #autovacuum_naptime = 60       # time between autovacuum runs, in secs
-#autovacuum_vacuum_threshold = 1000    # min # of tuple updates before
+#autovacuum_vacuum_threshold = 500 # min # of tuple updates before
                    # vacuum
-#autovacuum_analyze_threshold = 500    # min # of tuple updates before 
+#autovacuum_analyze_threshold = 250    # min # of tuple updates before 
                    # analyze
-#autovacuum_vacuum_scale_factor = 0.4  # fraction of rel size before 
+#autovacuum_vacuum_scale_factor = 0.2  # fraction of rel size before 
                    # vacuum
-#autovacuum_analyze_scale_factor = 0.2 # fraction of rel size before 
+#autovacuum_analyze_scale_factor = 0.1 # fraction of rel size before 
                    # analyze
 #autovacuum_vacuum_cost_delay = -1 # default vacuum cost delay for 
                    # autovac, -1 means use