Make autovacuum behavior more agressive, per discussion on hackers list
authorBruce Momjian
Sat, 2 Sep 2006 23:12:16 +0000 (23:12 +0000)
committerBruce Momjian
Sat, 2 Sep 2006 23:12:16 +0000 (23:12 +0000)
--- was part of autovacuum default 'on' patch that was reverted, but we
want this part.

Peter Eisentraut

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

index 0404b36df6afd7edab122dba168c7f762c0e6d18..52e3d11209cd102162af6923d6fbdb83539aebd4 100644 (file)
@@ -1,4 +1,4 @@
-
+
 
 
   Server Configuration
@@ -3113,7 +3113,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 +3131,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 +3150,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 +3169,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 fb12bd7adfc116f1f57247b698926bd43a63ebef..f985c9da423fb07eadb86bfae388071ec032c055 100644 (file)
@@ -10,7 +10,7 @@
  * Written by Peter Eisentraut .
  *
  * IDENTIFICATION
- *   $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.349 2006/09/02 23:04:20 momjian Exp $
+ *   $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.350 2006/09/02 23:12:16 momjian Exp $
  *
  *--------------------------------------------------------------------
  */
@@ -1564,7 +1564,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,
@@ -1572,7 +1572,7 @@ static struct config_int ConfigureNamesInt[] =
            NULL
        },
        &autovacuum_anl_thresh,
-       500, 0, INT_MAX, NULL, NULL
+       250, 0, INT_MAX, NULL, NULL
    },
 
    {
@@ -1738,7 +1738,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,
@@ -1746,7 +1746,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 8726f01cd6d5c375a1c31711ec1bb760e318439f..dcd3a02443210ea9e873dd9251d919b03932cd73 100644 (file)
 
 #autovacuum = off          # 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