Incorrect description of autovacuum_vacuum_threshold and autovacuum_vacuum_scale_factor

Started by PG Bug reporting formover 7 years ago3 messagesdocs
Jump to latest
#1PG Bug reporting form
noreply@postgresql.org

The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/10/static/runtime-config-autovacuum.html
Description:

This page lists the different autovacuum options. Describing
autovacuum_vacuum_threshold and autovacuum_vacuum_scale_factor independently
adds confusion unless you are also reading
https://www.postgresql.org/docs/10/static/routine-vacuuming.html#AUTOVACUUM
where we have a formula for the threshold and scale factor.

I suggest adding a reference for each one of the two parameters with a link
to the "Routine Vacuuming" section.

#2Alvaro Herrera
alvherre@2ndquadrant.com
In reply to: PG Bug reporting form (#1)
Re: Incorrect description of autovacuum_vacuum_threshold and autovacuum_vacuum_scale_factor

On 2018-Sep-27, PG Doc comments form wrote:

Page: https://www.postgresql.org/docs/10/static/runtime-config-autovacuum.html

This page lists the different autovacuum options. Describing
autovacuum_vacuum_threshold and autovacuum_vacuum_scale_factor independently
adds confusion unless you are also reading
https://www.postgresql.org/docs/10/static/routine-vacuuming.html#AUTOVACUUM
where we have a formula for the threshold and scale factor.

True.

I suggest adding a reference for each one of the two parameters with a link
to the "Routine Vacuuming" section.

I suggest adding "This number is added to the number coming from the
autovacuum_vacuum_scale_factor parameter for each table" just before the
"This parameter can only be set" phrase. So we'd end up with this:

autovacuum_vacuum_threshold (integer)
Specifies the minimum number of updated or deleted tuples needed to trigger a VACUUM in any one table. The default is 50 tuples. This number is added to the number coming from the autovacuum_vacuum_scale_factor parameter for each table. This parameter can only be set in the postgresql.conf file or on the server command line; but the setting can be overridden for individual tables by changing table storage parameters.

autovacuum_vacuum_scale_factor (floating point)
Specifies a fraction of the table size to add to autovacuum_vacuum_threshold when deciding whether to trigger a VACUUM. The default is 0.2 (20% of table size). This number is added to the autovacuum_vacuum_threshold parameter for each table. This parameter can only be set in the postgresql.conf file or on the server command line; but the setting can be overridden for individual tables by changing table storage parameters.

Same for the analyze parameters.

I suppose we don't need any updates to the section of
https://www.postgresql.org/docs/10/static/sql-createtable.html that
explains the equivalent reloptions, since those ones are very succint
anyway.

--
�lvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

#3Martín Marqués
martin.marques@gmail.com
In reply to: Alvaro Herrera (#2)
Re: Incorrect description of autovacuum_vacuum_threshold and autovacuum_vacuum_scale_factor

El jue., 27 sept. 2018 a las 18:05, Alvaro Herrera
(<alvherre@2ndquadrant.com>) escribió:

I suggest adding "This number is added to the number coming from the
autovacuum_vacuum_scale_factor parameter for each table" just before the
"This parameter can only be set" phrase. So we'd end up with this:

autovacuum_vacuum_threshold (integer)
Specifies the minimum number of updated or deleted tuples needed to trigger a VACUUM in any one table. The default is 50 tuples. This number is added to the number coming from the autovacuum_vacuum_scale_factor parameter for each table. This parameter can only be set in the postgresql.conf file or on the server command line; but the setting can be overridden for individual tables by changing table storage parameters.

autovacuum_vacuum_scale_factor (floating point)
Specifies a fraction of the table size to add to autovacuum_vacuum_threshold when deciding whether to trigger a VACUUM. The default is 0.2 (20% of table size). This number is added to the autovacuum_vacuum_threshold parameter for each table. This parameter can only be set in the postgresql.conf file or on the server command line; but the setting can be overridden for individual tables by changing table storage parameters.

That looks very good IMO.

--
Martín Marqués
It’s not that I have something to hide,
it’s that I have nothing I want you to see