mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-01-24 18:55:04 +08:00
Turn autovacuum on by default. (stats_row_level is also on by default.)
Threshold and scale factor are cut in half for more aggressive behavior.
This commit is contained in:
parent
ea2e263539
commit
88b8110443
@ -1,4 +1,4 @@
|
||||
<!-- $PostgreSQL: pgsql/doc/src/sgml/config.sgml,v 1.75 2006/08/17 23:04:03 tgl Exp $ -->
|
||||
<!-- $PostgreSQL: pgsql/doc/src/sgml/config.sgml,v 1.76 2006/08/28 13:37:18 petere Exp $ -->
|
||||
|
||||
<chapter Id="runtime-config">
|
||||
<title>Server Configuration</title>
|
||||
@ -383,7 +383,7 @@ SET ENABLE_SEQSCAN TO OFF;
|
||||
</para>
|
||||
|
||||
<para>
|
||||
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
|
||||
<varname>max_connections</varname>. This parameter can only be
|
||||
set at server start.
|
||||
</para>
|
||||
@ -2990,7 +2990,8 @@ SELECT * FROM parent WHERE key = 2400;
|
||||
<listitem>
|
||||
<para>
|
||||
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.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -3113,7 +3114,7 @@ SELECT * FROM parent WHERE key = 2400;
|
||||
<para>
|
||||
Specifies the minimum number of updated or deleted tuples needed
|
||||
to trigger a <command>VACUUM</> in any one table.
|
||||
The default is 1000.
|
||||
The default is 500.
|
||||
This parameter can only be set in the <filename>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;
|
||||
<para>
|
||||
Specifies the minimum number of inserted, updated or deleted tuples
|
||||
needed to trigger an <command>ANALYZE</> in any one table.
|
||||
The default is 500.
|
||||
The default is 250.
|
||||
This parameter can only be set in the <filename>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
|
||||
<varname>autovacuum_vacuum_threshold</varname>
|
||||
when deciding whether to trigger a <command>VACUUM</>.
|
||||
The default is 0.4.
|
||||
The default is 0.2.
|
||||
This parameter can only be set in the <filename>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
|
||||
<varname>autovacuum_analyze_threshold</varname>
|
||||
when deciding whether to trigger an <command>ANALYZE</>.
|
||||
The default is 0.2.
|
||||
The default is 0.1.
|
||||
This parameter can only be set in the <filename>postgresql.conf</>
|
||||
file or on the server command line.
|
||||
This setting can be overridden for individual tables by entries in
|
||||
|
@ -1,4 +1,4 @@
|
||||
<!-- $PostgreSQL: pgsql/doc/src/sgml/maintenance.sgml,v 1.59 2006/08/04 04:07:38 momjian Exp $ -->
|
||||
<!-- $PostgreSQL: pgsql/doc/src/sgml/maintenance.sgml,v 1.60 2006/08/28 13:37:18 petere Exp $ -->
|
||||
|
||||
<chapter id="maintenance">
|
||||
<title>Routine Database Maintenance Tasks</title>
|
||||
@ -447,14 +447,14 @@ HINT: Stop the postmaster and use a standalone backend to VACUUM in "mydb".
|
||||
</sect2>
|
||||
|
||||
<sect2 id="autovacuum">
|
||||
<title id="autovacuum-title">The auto-vacuum daemon</title>
|
||||
<title id="autovacuum-title">The autovacuum daemon</title>
|
||||
|
||||
<indexterm>
|
||||
<primary>autovacuum</primary>
|
||||
<secondary>general information</secondary>
|
||||
</indexterm>
|
||||
<para>
|
||||
Beginning in <productname>PostgreSQL </productname> 8.1, there is a
|
||||
There is a
|
||||
separate optional server process called the <firstterm>autovacuum
|
||||
daemon</firstterm>, whose purpose is to automate the execution of
|
||||
<command>VACUUM</command> and <command>ANALYZE </command> commands.
|
||||
@ -465,7 +465,9 @@ HINT: Stop the postmaster and use a standalone backend to VACUUM in "mydb".
|
||||
linkend="guc-stats-start-collector"> and <xref
|
||||
linkend="guc-stats-row-level"> are set to <literal>true</literal>. Also,
|
||||
it's important to allow a slot for the autovacuum process when choosing
|
||||
the value of <xref linkend="guc-superuser-reserved-connections">.
|
||||
the value of <xref linkend="guc-superuser-reserved-connections">. In
|
||||
the default configuration, autovacuuming is enabled and the related
|
||||
configuration parameters are appropriately set.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
|
@ -10,7 +10,7 @@
|
||||
* Written by Peter Eisentraut <peter_e@gmx.net>.
|
||||
*
|
||||
* 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 */
|
||||
|
@ -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
|
||||
@ -345,7 +345,7 @@
|
||||
#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)
|
||||
|
||||
|
||||
@ -361,15 +361,15 @@
|
||||
# AUTOVACUUM PARAMETERS
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
#autovacuum = off # enable autovacuum subprocess?
|
||||
#autovacuum = on # 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
|
||||
|
Loading…
Reference in New Issue
Block a user