pg.ddx.io  pgsql-committers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
pgsql: Consolidate docs for vacuum-related GUCs in new subsection
14+ messages / 5 participants
[nested] [flat]

Commits from this thread:
  2025-01-14 2ae98ea5ab  Synchronize guc_tables.c categories with vacuum docs categories
  2025-01-13 af2317652d  Reorder vacuum GUCs in postgresql.conf.sample to match docs
* pgsql: Consolidate docs for vacuum-related GUCs in new subsection
@ 2025-01-10 23:22 Melanie Plageman <melanieplageman@gmail.com>
  2025-01-11 09:02 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  0 siblings, 1 reply; 14+ messages in thread

From: Melanie Plageman @ 2025-01-10 23:22 UTC (permalink / raw)
  To: pgsql-committers@lists.postgresql.org

Consolidate docs for vacuum-related GUCs in new subsection

GUCs related to vacuum's freezing behavior were documented in a
subsection of the Client Connection Defaults documentation. These GUCs
don't belong there, as they affect the freezing behavior of all vacuums
-- including autovacuums.

There wasn't a clear alternative location, so this commit makes a new
"Server Configuration" docs subsection, "Vacuuming", with a subsection
for "Freezing". It also moves the "Automatic Vacuuming" subsection and
the docs on GUCs controlling cost-based vacuum delay under the new
"Vacuuming" subsection.

The other vacuum-related GUCs under the "Resource Consumption"
subsection have been left in their current location, as they seem to fit
there.

The GUCs' documentation was largely lifted and shifted. The only
modification made was the addition of a few missing <literal> tags.

Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
Discussion: https://postgr.es/m/flat/CAAKRu_aQUOaMYrcjNuXeSkJtaX9oRUzKP57bsYbC0gVVWS%2BcbA%40mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/ca9c6a5680d7c7dece0f7209ee7ce20c9dfe0840

Modified Files
--------------
doc/src/sgml/config.sgml | 1254 ++++++++++++++++++++++++----------------------
1 file changed, 643 insertions(+), 611 deletions(-)



^ permalink  raw  reply  [nested|flat] 14+ messages in thread

* Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection
  2025-01-10 23:22 pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
@ 2025-01-11 09:02 ` Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-12 19:07   ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Daniel Gustafsson <daniel@yesql.se>
  0 siblings, 1 reply; 14+ messages in thread

From: Alvaro Herrera @ 2025-01-11 09:02 UTC (permalink / raw)
  To: Melanie Plageman <melanieplageman@gmail.com>; +Cc: pgsql-hackers@lists.postgresql.org

On 2025-Jan-10, Melanie Plageman wrote:

> Consolidate docs for vacuum-related GUCs in new subsection

Hmm, doesn't this need a corresponding rearrangement of the
postgresql.conf.sample file and the GUC grouping in guc_tables.c/h?

-- 
Álvaro Herrera         PostgreSQL Developer  —  https://www.EnterpriseDB.com/
"Los cuentos de hadas no dan al niño su primera idea sobre los monstruos.
Lo que le dan es su primera idea de la posible derrota del monstruo."
                                                   (G. K. Chesterton)





^ permalink  raw  reply  [nested|flat] 14+ messages in thread

* Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection
  2025-01-10 23:22 pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-11 09:02 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
@ 2025-01-12 19:07   ` Daniel Gustafsson <daniel@yesql.se>
  2025-01-12 19:21     ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Tom Lane <tgl@sss.pgh.pa.us>
  0 siblings, 1 reply; 14+ messages in thread

From: Daniel Gustafsson @ 2025-01-12 19:07 UTC (permalink / raw)
  To: Alvaro Herrera <alvherre@alvh.no-ip.org>; +Cc: Melanie Plageman <melanieplageman@gmail.com>; PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>

> On 11 Jan 2025, at 10:02, Alvaro Herrera <alvherre@alvh.no-ip.org> wrote:
> 
> On 2025-Jan-10, Melanie Plageman wrote:
> 
>> Consolidate docs for vacuum-related GUCs in new subsection
> 
> Hmm, doesn't this need a corresponding rearrangement of the
> postgresql.conf.sample file

That's a good point.

> and the GUC grouping in guc_tables.c/h?

I don't know what our policy around this is, and maybe the backpatching hazard
isn't too bad here, but it doesn't entirely seem worth the churn.

--
Daniel Gustafsson






^ permalink  raw  reply  [nested|flat] 14+ messages in thread

* Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection
  2025-01-10 23:22 pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-11 09:02 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-12 19:07   ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Daniel Gustafsson <daniel@yesql.se>
@ 2025-01-12 19:21     ` Tom Lane <tgl@sss.pgh.pa.us>
  2025-01-13 15:22       ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  0 siblings, 1 reply; 14+ messages in thread

From: Tom Lane @ 2025-01-12 19:21 UTC (permalink / raw)
  To: Daniel Gustafsson <daniel@yesql.se>; +Cc: Alvaro Herrera <alvherre@alvh.no-ip.org>; Melanie Plageman <melanieplageman@gmail.com>; PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>

Daniel Gustafsson <daniel@yesql.se> writes:
> On 11 Jan 2025, at 10:02, Alvaro Herrera <alvherre@alvh.no-ip.org> wrote:
>> and the GUC grouping in guc_tables.c/h?

> I don't know what our policy around this is, and maybe the backpatching hazard
> isn't too bad here, but it doesn't entirely seem worth the churn.

I think the entire point of that categorization is to line up with the
docs, so our policy should be to fix this.

			regards, tom lane





^ permalink  raw  reply  [nested|flat] 14+ messages in thread

* Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection
  2025-01-10 23:22 pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-11 09:02 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-12 19:07   ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Daniel Gustafsson <daniel@yesql.se>
  2025-01-12 19:21     ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Tom Lane <tgl@sss.pgh.pa.us>
@ 2025-01-13 15:22       ` Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 19:57         ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  0 siblings, 1 reply; 14+ messages in thread

From: Melanie Plageman @ 2025-01-13 15:22 UTC (permalink / raw)
  To: Tom Lane <tgl@sss.pgh.pa.us>; +Cc: Daniel Gustafsson <daniel@yesql.se>; Alvaro Herrera <alvherre@alvh.no-ip.org>; PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>

Thanks to Álvaro for pointing this out. I didn't think of it.

On Sun, Jan 12, 2025 at 2:21 PM Tom Lane <tgl@sss.pgh.pa.us> wrote:
>
> Daniel Gustafsson <daniel@yesql.se> writes:
> > On 11 Jan 2025, at 10:02, Alvaro Herrera <alvherre@alvh.no-ip.org> wrote:
> >> and the GUC grouping in guc_tables.c/h?
>
> > I don't know what our policy around this is, and maybe the backpatching hazard
> > isn't too bad here, but it doesn't entirely seem worth the churn.
>
> I think the entire point of that categorization is to line up with the
> docs, so our policy should be to fix this.

I wrote a patch to reorder postgresql.conf.sample. But when I started
looking at guc_tables.c, it doesn't seem like those are grouped
according to the current docs order. Part of this is because some of
the GUCs have different data types. But this appears to be more than
that. For example, in master guc_tables.c,
autovacuum_vacuum_cost_limit and vacuum_cost_limit are together (in
docs in master they were in different sub-sections). Is guc_tables.c
meant to be consistent with the ordering in the docs?

- Melanie





^ permalink  raw  reply  [nested|flat] 14+ messages in thread

* Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection
  2025-01-10 23:22 pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-11 09:02 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-12 19:07   ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Daniel Gustafsson <daniel@yesql.se>
  2025-01-12 19:21     ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Tom Lane <tgl@sss.pgh.pa.us>
  2025-01-13 15:22       ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
@ 2025-01-13 19:57         ` Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 20:46           ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  0 siblings, 1 reply; 14+ messages in thread

From: Melanie Plageman @ 2025-01-13 19:57 UTC (permalink / raw)
  To: Tom Lane <tgl@sss.pgh.pa.us>; +Cc: Daniel Gustafsson <daniel@yesql.se>; Alvaro Herrera <alvherre@alvh.no-ip.org>; PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>

On Mon, Jan 13, 2025 at 10:22 AM Melanie Plageman
<melanieplageman@gmail.com> wrote:
>
> Thanks to Álvaro for pointing this out. I didn't think of it.
>
> On Sun, Jan 12, 2025 at 2:21 PM Tom Lane <tgl@sss.pgh.pa.us> wrote:
> >
> > Daniel Gustafsson <daniel@yesql.se> writes:
> > > On 11 Jan 2025, at 10:02, Alvaro Herrera <alvherre@alvh.no-ip.org> wrote:
> > >> and the GUC grouping in guc_tables.c/h?
> >
> > > I don't know what our policy around this is, and maybe the backpatching hazard
> > > isn't too bad here, but it doesn't entirely seem worth the churn.
> >
> > I think the entire point of that categorization is to line up with the
> > docs, so our policy should be to fix this.
>
> I wrote a patch to reorder postgresql.conf.sample. But when I started
> looking at guc_tables.c, it doesn't seem like those are grouped
> according to the current docs order. Part of this is because some of
> the GUCs have different data types. But this appears to be more than
> that. For example, in master guc_tables.c,
> autovacuum_vacuum_cost_limit and vacuum_cost_limit are together (in
> docs in master they were in different sub-sections). Is guc_tables.c
> meant to be consistent with the ordering in the docs?

Since I didn't hear back about this and I don't see an obvious
alternative reorganization in guc_tables.c, I plan to just push the
attached patch that updates only postgresql.conf.sample.

- Melanie

Attachments:

v1-0001-Reorder-vacuum-GUCs-in-postgresql.conf.sample-to-.patch (application/octet-stream, 3.2K) download From 1403192bb470533e48a19999f6701d7ec81741fd Mon Sep 17 00:00:00 2001 From: Melanie Plageman <melanieplageman@gmail.com> Date: Mon, 13 Jan 2025 10:12:27 -0500 Subject: [PATCH v1] Reorder vacuum GUCs in postgresql.conf.sample to match docs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ca9c6a5680d consolidated most of vacuum-related GUCs' documentation into a new subsection. It neglected, however, to reorganize postgresql.conf.sample to match the new order. Do this now. Reported-by: Álvaro Herrera Discussion: https://postgr.es/m/202501110902.5banlseavz7c%40alvherre.pgsql --- src/backend/utils/misc/postgresql.conf.sample | 34 +++++++++++-------- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/src/backend/utils/misc/postgresql.conf.sample b/src/backend/utils/misc/postgresql.conf.sample index b2bc43383db..079efa1baa7 100644 --- a/src/backend/utils/misc/postgresql.conf.sample +++ b/src/backend/utils/misc/postgresql.conf.sample @@ -185,14 +185,6 @@ #max_files_per_process = 1000 # min 64 # (change requires restart) -# - Cost-Based Vacuum Delay - - -#vacuum_cost_delay = 0 # 0-100 milliseconds (0 disables) -#vacuum_cost_page_hit = 1 # 0-10000 credits -#vacuum_cost_page_miss = 2 # 0-10000 credits -#vacuum_cost_page_dirty = 20 # 0-10000 credits -#vacuum_cost_limit = 200 # 1-10000 credits - # - Background Writer - #bgwriter_delay = 200ms # 10-10000ms between rounds @@ -656,9 +648,11 @@ #------------------------------------------------------------------------------ -# AUTOVACUUM +# VACUUMING #------------------------------------------------------------------------------ +# - Automatic Vacuuming - + #autovacuum = on # Enable autovacuum subprocess? 'on' # requires track_counts to also be on. autovacuum_worker_slots = 16 # autovacuum worker slots to allocate @@ -688,6 +682,22 @@ autovacuum_worker_slots = 16 # autovacuum worker slots to allocate # autovacuum, -1 means use # vacuum_cost_limit +# - Cost-Based Vacuum Delay - + +#vacuum_cost_delay = 0 # 0-100 milliseconds (0 disables) +#vacuum_cost_page_hit = 1 # 0-10000 credits +#vacuum_cost_page_miss = 2 # 0-10000 credits +#vacuum_cost_page_dirty = 20 # 0-10000 credits +#vacuum_cost_limit = 200 # 1-10000 credits + +# - Freezing - + +#vacuum_freeze_table_age = 150000000 +#vacuum_freeze_min_age = 50000000 +#vacuum_failsafe_age = 1600000000 +#vacuum_multixact_freeze_table_age = 150000000 +#vacuum_multixact_freeze_min_age = 5000000 +#vacuum_multixact_failsafe_age = 1600000000 #------------------------------------------------------------------------------ # CLIENT CONNECTION DEFAULTS @@ -722,12 +732,6 @@ autovacuum_worker_slots = 16 # autovacuum worker slots to allocate #lock_timeout = 0 # in milliseconds, 0 is disabled #idle_in_transaction_session_timeout = 0 # in milliseconds, 0 is disabled #idle_session_timeout = 0 # in milliseconds, 0 is disabled -#vacuum_freeze_table_age = 150000000 -#vacuum_freeze_min_age = 50000000 -#vacuum_failsafe_age = 1600000000 -#vacuum_multixact_freeze_table_age = 150000000 -#vacuum_multixact_freeze_min_age = 5000000 -#vacuum_multixact_failsafe_age = 1600000000 #bytea_output = 'hex' # hex, escape #xmlbinary = 'base64' #xmloption = 'content' -- 2.45.2
^ permalink raw reply [nested|flat] 14+ messages in thread

* Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection
  2025-01-10 23:22 pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-11 09:02 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-12 19:07   ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Daniel Gustafsson <daniel@yesql.se>
  2025-01-12 19:21     ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Tom Lane <tgl@sss.pgh.pa.us>
  2025-01-13 15:22       ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 19:57         ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
@ 2025-01-13 20:46           ` Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-13 22:35             ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  0 siblings, 1 reply; 14+ messages in thread

From: Alvaro Herrera @ 2025-01-13 20:46 UTC (permalink / raw)
  To: Melanie Plageman <melanieplageman@gmail.com>; +Cc: Tom Lane <tgl@sss.pgh.pa.us>; Daniel Gustafsson <daniel@yesql.se>; PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>

On 2025-Jan-13, Melanie Plageman wrote:

> Since I didn't hear back about this and I don't see an obvious
> alternative reorganization in guc_tables.c, I plan to just push the
> attached patch that updates only postgresql.conf.sample.

Apologies, I was very unclear -- I didn't want to talk about the
ordering of entries in the code, but the categorization.  See the
config_group_names list in guc_tables.c, which defines some groups.
Each setting belongs into a group, and those groups correspond to what
the sample config file lists as section/subsection titles and to the
grouping in the docs.  Also, this categorization affects how the entries
are listed in the pg_settings view and in "postgres --describe-config",
which feed from the same tables.

Perhaps with your changes (assuming I read your commit message right),
we need new groups:
VACUUMING
VACUUMING_FREEZING
VACUUMING_AUTOVACUUM

Thanks

-- 
Álvaro Herrera        Breisgau, Deutschland  —  https://www.EnterpriseDB.com/
"Doing what he did amounts to sticking his fingers under the hood of the
implementation; if he gets his fingers burnt, it's his problem."  (Tom Lane)





^ permalink  raw  reply  [nested|flat] 14+ messages in thread

* Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection
  2025-01-10 23:22 pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-11 09:02 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-12 19:07   ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Daniel Gustafsson <daniel@yesql.se>
  2025-01-12 19:21     ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Tom Lane <tgl@sss.pgh.pa.us>
  2025-01-13 15:22       ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 19:57         ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 20:46           ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
@ 2025-01-13 22:35             ` Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 23:51               ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alena Rybakina <a.rybakina@postgrespro.ru>
  2025-01-14 18:21               ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  0 siblings, 2 replies; 14+ messages in thread

From: Melanie Plageman @ 2025-01-13 22:35 UTC (permalink / raw)
  To: Alvaro Herrera <alvherre@alvh.no-ip.org>; +Cc: Tom Lane <tgl@sss.pgh.pa.us>; Daniel Gustafsson <daniel@yesql.se>; PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>

On Mon, Jan 13, 2025 at 3:46 PM Alvaro Herrera <alvherre@alvh.no-ip.org> wrote:
>
> On 2025-Jan-13, Melanie Plageman wrote:
>
> > Since I didn't hear back about this and I don't see an obvious
> > alternative reorganization in guc_tables.c, I plan to just push the
> > attached patch that updates only postgresql.conf.sample.
>
> Apologies, I was very unclear -- I didn't want to talk about the
> ordering of entries in the code, but the categorization.  See the
> config_group_names list in guc_tables.c, which defines some groups.
> Each setting belongs into a group, and those groups correspond to what
> the sample config file lists as section/subsection titles and to the
> grouping in the docs.  Also, this categorization affects how the entries
> are listed in the pg_settings view and in "postgres --describe-config",
> which feed from the same tables.

Oh dear, I had no idea that these categories existed. I suppose I
never paid attention to the category column in pg_settings nor used
--describe-config. Attached is a patch to fix this. I checked both
pg_settings and --describe-config output, and it seems to work.

I'm quite sorry about the extra noise this is causing (especially for
people with patch sets requiring rebasing).

> Perhaps with your changes (assuming I read your commit message right),
> we need new groups:
> VACUUMING
> VACUUMING_FREEZING
> VACUUMING_AUTOVACUUM

I've gone with VACUUM_AUTOVACUUM, VACUUM_COST_DELAY, and
VACUUM_FREEZING, but I am open to feedback.

- Melanie

Attachments:

v1-0001-Synchronize-guc_tables.c-categories-with-vacuum-d.patch (application/octet-stream, 10.7K) download From 47f3275712d07d5c4f9973e45010040add584845 Mon Sep 17 00:00:00 2001 From: Melanie Plageman <melanieplageman@gmail.com> Date: Mon, 13 Jan 2025 17:22:50 -0500 Subject: [PATCH v1] Synchronize guc_tables.c categories with vacuum docs categories MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ca9c6a5680d consolidated most of the vacuum-related GUCs' documentation into a new subsection. af2317652d5daf8b then enforced this order in postgresql.conf.sample. This commit reorganizes the GUC groups in guc_tables.c/h to match the updated ordering in the docs. Reported-by: Álvaro Herrera <alvherre@alvh.no-ip.org> Discussion: https://postgr.es/m/202501132046.m4mcvxxswznu%40alvherre.pgsql --- src/backend/utils/misc/guc_tables.c | 55 +++++++++++++++-------------- src/include/utils/guc_tables.h | 5 +-- 2 files changed, 31 insertions(+), 29 deletions(-) diff --git a/src/backend/utils/misc/guc_tables.c b/src/backend/utils/misc/guc_tables.c index c9d8cd796a8..38cb9e970d5 100644 --- a/src/backend/utils/misc/guc_tables.c +++ b/src/backend/utils/misc/guc_tables.c @@ -681,7 +681,6 @@ const char *const config_group_names[] = [RESOURCES_MEM] = gettext_noop("Resource Usage / Memory"), [RESOURCES_DISK] = gettext_noop("Resource Usage / Disk"), [RESOURCES_KERNEL] = gettext_noop("Resource Usage / Kernel Resources"), - [RESOURCES_VACUUM_DELAY] = gettext_noop("Resource Usage / Cost-Based Vacuum Delay"), [RESOURCES_BGWRITER] = gettext_noop("Resource Usage / Background Writer"), [RESOURCES_ASYNCHRONOUS] = gettext_noop("Resource Usage / Asynchronous Behavior"), [WAL_SETTINGS] = gettext_noop("Write-Ahead Log / Settings"), @@ -705,7 +704,9 @@ const char *const config_group_names[] = [PROCESS_TITLE] = gettext_noop("Reporting and Logging / Process Title"), [STATS_MONITORING] = gettext_noop("Statistics / Monitoring"), [STATS_CUMULATIVE] = gettext_noop("Statistics / Cumulative Query and Index Statistics"), - [AUTOVACUUM] = gettext_noop("Autovacuum"), + [VACUUM_AUTOVACUUM] = gettext_noop("Vacuuming / Automatic Vacuuming"), + [VACUUM_COST_DELAY] = gettext_noop("Vacuuming / Cost-Based Vacuum Delay"), + [VACUUM_FREEZING] = gettext_noop("Vacuuming / Freezing"), [CLIENT_CONN_STATEMENT] = gettext_noop("Client Connection Defaults / Statement Behavior"), [CLIENT_CONN_LOCALE] = gettext_noop("Client Connection Defaults / Locale and Formatting"), [CLIENT_CONN_PRELOAD] = gettext_noop("Client Connection Defaults / Shared Library Preloading"), @@ -1499,7 +1500,7 @@ struct config_bool ConfigureNamesBool[] = }, { - {"autovacuum", PGC_SIGHUP, AUTOVACUUM, + {"autovacuum", PGC_SIGHUP, VACUUM_AUTOVACUUM, gettext_noop("Starts the autovacuum subprocess."), NULL }, @@ -2583,7 +2584,7 @@ struct config_int ConfigureNamesInt[] = }, { - {"vacuum_cost_page_hit", PGC_USERSET, RESOURCES_VACUUM_DELAY, + {"vacuum_cost_page_hit", PGC_USERSET, VACUUM_COST_DELAY, gettext_noop("Vacuum cost for a page found in the buffer cache."), NULL }, @@ -2593,7 +2594,7 @@ struct config_int ConfigureNamesInt[] = }, { - {"vacuum_cost_page_miss", PGC_USERSET, RESOURCES_VACUUM_DELAY, + {"vacuum_cost_page_miss", PGC_USERSET, VACUUM_COST_DELAY, gettext_noop("Vacuum cost for a page not found in the buffer cache."), NULL }, @@ -2603,7 +2604,7 @@ struct config_int ConfigureNamesInt[] = }, { - {"vacuum_cost_page_dirty", PGC_USERSET, RESOURCES_VACUUM_DELAY, + {"vacuum_cost_page_dirty", PGC_USERSET, VACUUM_COST_DELAY, gettext_noop("Vacuum cost for a page dirtied by vacuum."), NULL }, @@ -2613,7 +2614,7 @@ struct config_int ConfigureNamesInt[] = }, { - {"vacuum_cost_limit", PGC_USERSET, RESOURCES_VACUUM_DELAY, + {"vacuum_cost_limit", PGC_USERSET, VACUUM_COST_DELAY, gettext_noop("Vacuum cost amount available before napping."), NULL }, @@ -2623,7 +2624,7 @@ struct config_int ConfigureNamesInt[] = }, { - {"autovacuum_vacuum_cost_limit", PGC_SIGHUP, AUTOVACUUM, + {"autovacuum_vacuum_cost_limit", PGC_SIGHUP, VACUUM_AUTOVACUUM, gettext_noop("Vacuum cost amount available before napping, for autovacuum."), NULL }, @@ -2734,7 +2735,7 @@ struct config_int ConfigureNamesInt[] = }, { - {"vacuum_freeze_min_age", PGC_USERSET, CLIENT_CONN_STATEMENT, + {"vacuum_freeze_min_age", PGC_USERSET, VACUUM_FREEZING, gettext_noop("Minimum age at which VACUUM should freeze a table row."), NULL }, @@ -2744,7 +2745,7 @@ struct config_int ConfigureNamesInt[] = }, { - {"vacuum_freeze_table_age", PGC_USERSET, CLIENT_CONN_STATEMENT, + {"vacuum_freeze_table_age", PGC_USERSET, VACUUM_FREEZING, gettext_noop("Age at which VACUUM should scan whole table to freeze tuples."), NULL }, @@ -2754,7 +2755,7 @@ struct config_int ConfigureNamesInt[] = }, { - {"vacuum_multixact_freeze_min_age", PGC_USERSET, CLIENT_CONN_STATEMENT, + {"vacuum_multixact_freeze_min_age", PGC_USERSET, VACUUM_FREEZING, gettext_noop("Minimum age at which VACUUM should freeze a MultiXactId in a table row."), NULL }, @@ -2764,7 +2765,7 @@ struct config_int ConfigureNamesInt[] = }, { - {"vacuum_multixact_freeze_table_age", PGC_USERSET, CLIENT_CONN_STATEMENT, + {"vacuum_multixact_freeze_table_age", PGC_USERSET, VACUUM_FREEZING, gettext_noop("Multixact age at which VACUUM should scan whole table to freeze tuples."), NULL }, @@ -2774,7 +2775,7 @@ struct config_int ConfigureNamesInt[] = }, { - {"vacuum_failsafe_age", PGC_USERSET, CLIENT_CONN_STATEMENT, + {"vacuum_failsafe_age", PGC_USERSET, VACUUM_FREEZING, gettext_noop("Age at which VACUUM should trigger failsafe to avoid a wraparound outage."), NULL }, @@ -2783,7 +2784,7 @@ struct config_int ConfigureNamesInt[] = NULL, NULL, NULL }, { - {"vacuum_multixact_failsafe_age", PGC_USERSET, CLIENT_CONN_STATEMENT, + {"vacuum_multixact_failsafe_age", PGC_USERSET, VACUUM_FREEZING, gettext_noop("Multixact age at which VACUUM should trigger failsafe to avoid a wraparound outage."), NULL }, @@ -3407,7 +3408,7 @@ struct config_int ConfigureNamesInt[] = }, { - {"autovacuum_naptime", PGC_SIGHUP, AUTOVACUUM, + {"autovacuum_naptime", PGC_SIGHUP, VACUUM_AUTOVACUUM, gettext_noop("Time to sleep between autovacuum runs."), NULL, GUC_UNIT_S @@ -3417,7 +3418,7 @@ struct config_int ConfigureNamesInt[] = NULL, NULL, NULL }, { - {"autovacuum_vacuum_threshold", PGC_SIGHUP, AUTOVACUUM, + {"autovacuum_vacuum_threshold", PGC_SIGHUP, VACUUM_AUTOVACUUM, gettext_noop("Minimum number of tuple updates or deletes prior to vacuum."), NULL }, @@ -3426,7 +3427,7 @@ struct config_int ConfigureNamesInt[] = NULL, NULL, NULL }, { - {"autovacuum_vacuum_insert_threshold", PGC_SIGHUP, AUTOVACUUM, + {"autovacuum_vacuum_insert_threshold", PGC_SIGHUP, VACUUM_AUTOVACUUM, gettext_noop("Minimum number of tuple inserts prior to vacuum, or -1 to disable insert vacuums."), NULL }, @@ -3435,7 +3436,7 @@ struct config_int ConfigureNamesInt[] = NULL, NULL, NULL }, { - {"autovacuum_analyze_threshold", PGC_SIGHUP, AUTOVACUUM, + {"autovacuum_analyze_threshold", PGC_SIGHUP, VACUUM_AUTOVACUUM, gettext_noop("Minimum number of tuple inserts, updates, or deletes prior to analyze."), NULL }, @@ -3445,7 +3446,7 @@ struct config_int ConfigureNamesInt[] = }, { /* see varsup.c for why this is PGC_POSTMASTER not PGC_SIGHUP */ - {"autovacuum_freeze_max_age", PGC_POSTMASTER, AUTOVACUUM, + {"autovacuum_freeze_max_age", PGC_POSTMASTER, VACUUM_AUTOVACUUM, gettext_noop("Age at which to autovacuum a table to prevent transaction ID wraparound."), NULL }, @@ -3457,7 +3458,7 @@ struct config_int ConfigureNamesInt[] = }, { /* see multixact.c for why this is PGC_POSTMASTER not PGC_SIGHUP */ - {"autovacuum_multixact_freeze_max_age", PGC_POSTMASTER, AUTOVACUUM, + {"autovacuum_multixact_freeze_max_age", PGC_POSTMASTER, VACUUM_AUTOVACUUM, gettext_noop("Multixact age at which to autovacuum a table to prevent multixact wraparound."), NULL }, @@ -3467,7 +3468,7 @@ struct config_int ConfigureNamesInt[] = }, { /* see max_connections */ - {"autovacuum_worker_slots", PGC_POSTMASTER, AUTOVACUUM, + {"autovacuum_worker_slots", PGC_POSTMASTER, VACUUM_AUTOVACUUM, gettext_noop("Sets the number of backend slots to allocate for autovacuum workers."), NULL }, @@ -3476,7 +3477,7 @@ struct config_int ConfigureNamesInt[] = NULL, NULL, NULL }, { - {"autovacuum_max_workers", PGC_SIGHUP, AUTOVACUUM, + {"autovacuum_max_workers", PGC_SIGHUP, VACUUM_AUTOVACUUM, gettext_noop("Sets the maximum number of simultaneously running autovacuum worker processes."), NULL }, @@ -3941,7 +3942,7 @@ struct config_real ConfigureNamesReal[] = }, { - {"vacuum_cost_delay", PGC_USERSET, RESOURCES_VACUUM_DELAY, + {"vacuum_cost_delay", PGC_USERSET, VACUUM_COST_DELAY, gettext_noop("Vacuum cost delay in milliseconds."), NULL, GUC_UNIT_MS @@ -3952,7 +3953,7 @@ struct config_real ConfigureNamesReal[] = }, { - {"autovacuum_vacuum_cost_delay", PGC_SIGHUP, AUTOVACUUM, + {"autovacuum_vacuum_cost_delay", PGC_SIGHUP, VACUUM_AUTOVACUUM, gettext_noop("Vacuum cost delay in milliseconds, for autovacuum."), NULL, GUC_UNIT_MS @@ -3963,7 +3964,7 @@ struct config_real ConfigureNamesReal[] = }, { - {"autovacuum_vacuum_scale_factor", PGC_SIGHUP, AUTOVACUUM, + {"autovacuum_vacuum_scale_factor", PGC_SIGHUP, VACUUM_AUTOVACUUM, gettext_noop("Number of tuple updates or deletes prior to vacuum as a fraction of reltuples."), NULL }, @@ -3973,7 +3974,7 @@ struct config_real ConfigureNamesReal[] = }, { - {"autovacuum_vacuum_insert_scale_factor", PGC_SIGHUP, AUTOVACUUM, + {"autovacuum_vacuum_insert_scale_factor", PGC_SIGHUP, VACUUM_AUTOVACUUM, gettext_noop("Number of tuple inserts prior to vacuum as a fraction of reltuples."), NULL }, @@ -3983,7 +3984,7 @@ struct config_real ConfigureNamesReal[] = }, { - {"autovacuum_analyze_scale_factor", PGC_SIGHUP, AUTOVACUUM, + {"autovacuum_analyze_scale_factor", PGC_SIGHUP, VACUUM_AUTOVACUUM, gettext_noop("Number of tuple inserts, updates, or deletes prior to analyze as a fraction of reltuples."), NULL }, diff --git a/src/include/utils/guc_tables.h b/src/include/utils/guc_tables.h index 65a46b8565c..3f18ff451ef 100644 --- a/src/include/utils/guc_tables.h +++ b/src/include/utils/guc_tables.h @@ -63,7 +63,6 @@ enum config_group RESOURCES_MEM, RESOURCES_DISK, RESOURCES_KERNEL, - RESOURCES_VACUUM_DELAY, RESOURCES_BGWRITER, RESOURCES_ASYNCHRONOUS, WAL_SETTINGS, @@ -87,7 +86,9 @@ enum config_group PROCESS_TITLE, STATS_MONITORING, STATS_CUMULATIVE, - AUTOVACUUM, + VACUUM_AUTOVACUUM, + VACUUM_COST_DELAY, + VACUUM_FREEZING, CLIENT_CONN_STATEMENT, CLIENT_CONN_LOCALE, CLIENT_CONN_PRELOAD, -- 2.45.2
^ permalink raw reply [nested|flat] 14+ messages in thread

* Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection
  2025-01-10 23:22 pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-11 09:02 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-12 19:07   ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Daniel Gustafsson <daniel@yesql.se>
  2025-01-12 19:21     ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Tom Lane <tgl@sss.pgh.pa.us>
  2025-01-13 15:22       ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 19:57         ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 20:46           ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-13 22:35             ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
@ 2025-01-13 23:51               ` Alena Rybakina <a.rybakina@postgrespro.ru>
  1 sibling, 0 replies; 14+ messages in thread

From: Alena Rybakina @ 2025-01-13 23:51 UTC (permalink / raw)
  To: Melanie Plageman <melanieplageman@gmail.com>; Alvaro Herrera <alvherre@alvh.no-ip.org>; +Cc: Tom Lane <tgl@sss.pgh.pa.us>; Daniel Gustafsson <daniel@yesql.se>; PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>

Hi!

On 14.01.2025 01:35, Melanie Plageman wrote:
> On Mon, Jan 13, 2025 at 3:46 PM Alvaro Herrera<alvherre@alvh.no-ip.org>  wrote:
>> On 2025-Jan-13, Melanie Plageman wrote:
>>
>>> Since I didn't hear back about this and I don't see an obvious
>>> alternative reorganization in guc_tables.c, I plan to just push the
>>> attached patch that updates only postgresql.conf.sample.
>> Apologies, I was very unclear -- I didn't want to talk about the
>> ordering of entries in the code, but the categorization.  See the
>> config_group_names list in guc_tables.c, which defines some groups.
>> Each setting belongs into a group, and those groups correspond to what
>> the sample config file lists as section/subsection titles and to the
>> grouping in the docs.  Also, this categorization affects how the entries
>> are listed in the pg_settings view and in "postgres --describe-config",
>> which feed from the same tables.
> Oh dear, I had no idea that these categories existed. I suppose I
> never paid attention to the category column in pg_settings nor used
> --describe-config. Attached is a patch to fix this. I checked both
> pg_settings and --describe-config output, and it seems to work.
>
> I'm quite sorry about the extra noise this is causing (especially for
> people with patch sets requiring rebasing).
>
>> Perhaps with your changes (assuming I read your commit message right),
>> we need new groups:
>> VACUUMING
>> VACUUMING_FREEZING
>> VACUUMING_AUTOVACUUM
> I've gone with VACUUM_AUTOVACUUM, VACUUM_COST_DELAY, and
> VACUUM_FREEZING, but I am open to feedback.

Looks good and convenient, thanks for the patch!

I noticed another guc autovacuum_work_mem, which belongs more to the 
autovacuum category in my opinion, although it belongs to RESOURCES_MEM, 
but in fact, only autovacuum uses it.

-- 
Regards,
Alena Rybakina
Postgres Professional

^ permalink  raw  reply  [nested|flat] 14+ messages in thread

* Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection
  2025-01-10 23:22 pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-11 09:02 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-12 19:07   ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Daniel Gustafsson <daniel@yesql.se>
  2025-01-12 19:21     ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Tom Lane <tgl@sss.pgh.pa.us>
  2025-01-13 15:22       ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 19:57         ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 20:46           ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-13 22:35             ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
@ 2025-01-14 18:21               ` Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-14 19:01                 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  1 sibling, 1 reply; 14+ messages in thread

From: Alvaro Herrera @ 2025-01-14 18:21 UTC (permalink / raw)
  To: Melanie Plageman <melanieplageman@gmail.com>; +Cc: Tom Lane <tgl@sss.pgh.pa.us>; Daniel Gustafsson <daniel@yesql.se>; PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>

On 2025-Jan-13, Melanie Plageman wrote:

> I've gone with VACUUM_AUTOVACUUM, VACUUM_COST_DELAY, and
> VACUUM_FREEZING, but I am open to feedback.

Looks good to me.  I checked these two queries, whose results appear
correct:

55432 18devel 560655=# select name, category from pg_settings where category ilike '%vacuum%';
                 name                  │              category               
───────────────────────────────────────┼─────────────────────────────────────
 autovacuum                            │ Vacuuming / Automatic Vacuuming
 autovacuum_analyze_scale_factor       │ Vacuuming / Automatic Vacuuming
 autovacuum_analyze_threshold          │ Vacuuming / Automatic Vacuuming
 autovacuum_freeze_max_age             │ Vacuuming / Automatic Vacuuming
 autovacuum_max_workers                │ Vacuuming / Automatic Vacuuming
 autovacuum_multixact_freeze_max_age   │ Vacuuming / Automatic Vacuuming
 autovacuum_naptime                    │ Vacuuming / Automatic Vacuuming
 autovacuum_vacuum_cost_delay          │ Vacuuming / Automatic Vacuuming
 autovacuum_vacuum_cost_limit          │ Vacuuming / Automatic Vacuuming
 autovacuum_vacuum_insert_scale_factor │ Vacuuming / Automatic Vacuuming
 autovacuum_vacuum_insert_threshold    │ Vacuuming / Automatic Vacuuming
 autovacuum_vacuum_scale_factor        │ Vacuuming / Automatic Vacuuming
 autovacuum_vacuum_threshold           │ Vacuuming / Automatic Vacuuming
 autovacuum_worker_slots               │ Vacuuming / Automatic Vacuuming
 vacuum_cost_delay                     │ Vacuuming / Cost-Based Vacuum Delay
 vacuum_cost_limit                     │ Vacuuming / Cost-Based Vacuum Delay
 vacuum_cost_page_dirty                │ Vacuuming / Cost-Based Vacuum Delay
 vacuum_cost_page_hit                  │ Vacuuming / Cost-Based Vacuum Delay
 vacuum_cost_page_miss                 │ Vacuuming / Cost-Based Vacuum Delay
 vacuum_failsafe_age                   │ Vacuuming / Freezing
 vacuum_freeze_min_age                 │ Vacuuming / Freezing
 vacuum_freeze_table_age               │ Vacuuming / Freezing
 vacuum_multixact_failsafe_age         │ Vacuuming / Freezing
 vacuum_multixact_freeze_min_age       │ Vacuuming / Freezing
 vacuum_multixact_freeze_table_age     │ Vacuuming / Freezing


55432 18devel 560655=# select name, category from pg_settings where (short_desc ilike '%vacuum%' or extra_desc ilike '%vacuum%') and category not ilike '%vacuum%';
            name             │              category               
─────────────────────────────┼─────────────────────────────────────
 autovacuum_work_mem         │ Resource Usage / Memory
 log_autovacuum_min_duration │ Reporting and Logging / What to Log
 maintenance_work_mem        │ Resource Usage / Memory
 vacuum_buffer_usage_limit   │ Resource Usage / Memory


-- 
Álvaro Herrera               48°01'N 7°57'E  —  https://www.EnterpriseDB.com/
"That sort of implies that there are Emacs keystrokes which aren't obscure.
I've been using it daily for 2 years now and have yet to discover any key
sequence which makes any sense."                        (Paul Thomas)





^ permalink  raw  reply  [nested|flat] 14+ messages in thread

* Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection
  2025-01-10 23:22 pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-11 09:02 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-12 19:07   ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Daniel Gustafsson <daniel@yesql.se>
  2025-01-12 19:21     ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Tom Lane <tgl@sss.pgh.pa.us>
  2025-01-13 15:22       ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 19:57         ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 20:46           ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-13 22:35             ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-14 18:21               ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
@ 2025-01-14 19:01                 ` Melanie Plageman <melanieplageman@gmail.com>
  2025-01-14 19:28                   ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-14 19:29                   ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alena Rybakina <a.rybakina@postgrespro.ru>
  0 siblings, 2 replies; 14+ messages in thread

From: Melanie Plageman @ 2025-01-14 19:01 UTC (permalink / raw)
  To: Alvaro Herrera <alvherre@alvh.no-ip.org>; +Cc: Tom Lane <tgl@sss.pgh.pa.us>; Daniel Gustafsson <daniel@yesql.se>; PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>

On Tue, Jan 14, 2025 at 1:21 PM Alvaro Herrera <alvherre@alvh.no-ip.org> wrote:
>
> On 2025-Jan-13, Melanie Plageman wrote:
>
> > I've gone with VACUUM_AUTOVACUUM, VACUUM_COST_DELAY, and
> > VACUUM_FREEZING, but I am open to feedback.
>
> Looks good to me.  I checked these two queries, whose results appear
> correct:
>
> 55432 18devel 560655=# select name, category from pg_settings where category ilike '%vacuum%';
>                  name                  │              category
> ───────────────────────────────────────┼─────────────────────────────────────
>  autovacuum                            │ Vacuuming / Automatic Vacuuming
>  autovacuum_analyze_scale_factor       │ Vacuuming / Automatic Vacuuming
>  autovacuum_analyze_threshold          │ Vacuuming / Automatic Vacuuming
>  autovacuum_freeze_max_age             │ Vacuuming / Automatic Vacuuming
>  autovacuum_max_workers                │ Vacuuming / Automatic Vacuuming
>  autovacuum_multixact_freeze_max_age   │ Vacuuming / Automatic Vacuuming
>  autovacuum_naptime                    │ Vacuuming / Automatic Vacuuming
>  autovacuum_vacuum_cost_delay          │ Vacuuming / Automatic Vacuuming
>  autovacuum_vacuum_cost_limit          │ Vacuuming / Automatic Vacuuming
>  autovacuum_vacuum_insert_scale_factor │ Vacuuming / Automatic Vacuuming
>  autovacuum_vacuum_insert_threshold    │ Vacuuming / Automatic Vacuuming
>  autovacuum_vacuum_scale_factor        │ Vacuuming / Automatic Vacuuming
>  autovacuum_vacuum_threshold           │ Vacuuming / Automatic Vacuuming
>  autovacuum_worker_slots               │ Vacuuming / Automatic Vacuuming
>  vacuum_cost_delay                     │ Vacuuming / Cost-Based Vacuum Delay
>  vacuum_cost_limit                     │ Vacuuming / Cost-Based Vacuum Delay
>  vacuum_cost_page_dirty                │ Vacuuming / Cost-Based Vacuum Delay
>  vacuum_cost_page_hit                  │ Vacuuming / Cost-Based Vacuum Delay
>  vacuum_cost_page_miss                 │ Vacuuming / Cost-Based Vacuum Delay
>  vacuum_failsafe_age                   │ Vacuuming / Freezing
>  vacuum_freeze_min_age                 │ Vacuuming / Freezing
>  vacuum_freeze_table_age               │ Vacuuming / Freezing
>  vacuum_multixact_failsafe_age         │ Vacuuming / Freezing
>  vacuum_multixact_freeze_min_age       │ Vacuuming / Freezing
>  vacuum_multixact_freeze_table_age     │ Vacuuming / Freezing
>
>
> 55432 18devel 560655=# select name, category from pg_settings where (short_desc ilike '%vacuum%' or extra_desc ilike '%vacuum%') and category not ilike '%vacuum%';
>             name             │              category
> ─────────────────────────────┼─────────────────────────────────────
>  autovacuum_work_mem         │ Resource Usage / Memory
>  log_autovacuum_min_duration │ Reporting and Logging / What to Log
>  maintenance_work_mem        │ Resource Usage / Memory
>  vacuum_buffer_usage_limit   │ Resource Usage / Memory

Yea, Alena also mentioned these GUCs that are in different groups. I
think it is okay for these four to remain in their current locations
as their current groupings seem descriptive enough.

- Melanie





^ permalink  raw  reply  [nested|flat] 14+ messages in thread

* Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection
  2025-01-10 23:22 pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-11 09:02 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-12 19:07   ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Daniel Gustafsson <daniel@yesql.se>
  2025-01-12 19:21     ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Tom Lane <tgl@sss.pgh.pa.us>
  2025-01-13 15:22       ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 19:57         ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 20:46           ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-13 22:35             ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-14 18:21               ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-14 19:01                 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
@ 2025-01-14 19:28                   ` Alvaro Herrera <alvherre@alvh.no-ip.org>
  1 sibling, 0 replies; 14+ messages in thread

From: Alvaro Herrera @ 2025-01-14 19:28 UTC (permalink / raw)
  To: Melanie Plageman <melanieplageman@gmail.com>; +Cc: Tom Lane <tgl@sss.pgh.pa.us>; Daniel Gustafsson <daniel@yesql.se>; PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>

On 2025-Jan-14, Melanie Plageman wrote:

> On Tue, Jan 14, 2025 at 1:21 PM Alvaro Herrera <alvherre@alvh.no-ip.org> wrote:

> > 55432 18devel 560655=# select name, category from pg_settings where (short_desc ilike '%vacuum%' or extra_desc ilike '%vacuum%') and category not ilike '%vacuum%';
> >             name             │              category
> > ─────────────────────────────┼─────────────────────────────────────
> >  autovacuum_work_mem         │ Resource Usage / Memory
> >  log_autovacuum_min_duration │ Reporting and Logging / What to Log
> >  maintenance_work_mem        │ Resource Usage / Memory
> >  vacuum_buffer_usage_limit   │ Resource Usage / Memory
> 
> Yea, Alena also mentioned these GUCs that are in different groups. I
> think it is okay for these four to remain in their current locations
> as their current groupings seem descriptive enough.

I agree.

-- 
Álvaro Herrera        Breisgau, Deutschland  —  https://www.EnterpriseDB.com/
"No hay ausente sin culpa ni presente sin disculpa" (Prov. francés)





^ permalink  raw  reply  [nested|flat] 14+ messages in thread

* Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection
  2025-01-10 23:22 pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-11 09:02 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-12 19:07   ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Daniel Gustafsson <daniel@yesql.se>
  2025-01-12 19:21     ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Tom Lane <tgl@sss.pgh.pa.us>
  2025-01-13 15:22       ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 19:57         ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 20:46           ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-13 22:35             ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-14 18:21               ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-14 19:01                 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
@ 2025-01-14 19:29                   ` Alena Rybakina <a.rybakina@postgrespro.ru>
  2025-01-14 20:35                     ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  1 sibling, 1 reply; 14+ messages in thread

From: Alena Rybakina @ 2025-01-14 19:29 UTC (permalink / raw)
  To: Melanie Plageman <melanieplageman@gmail.com>; +Cc: Tom Lane <tgl@sss.pgh.pa.us>; Daniel Gustafsson <daniel@yesql.se>; Alvaro Herrera <alvherre@alvh.no-ip.org>; PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>

On 14.01.2025 22:01, Melanie Plageman wrote:
> On Tue, Jan 14, 2025 at 1:21 PM Alvaro Herrera<alvherre@alvh.no-ip.org>  wrote:
>> On 2025-Jan-13, Melanie Plageman wrote:
>>
>>> I've gone with VACUUM_AUTOVACUUM, VACUUM_COST_DELAY, and
>>> VACUUM_FREEZING, but I am open to feedback.
>> Looks good to me.  I checked these two queries, whose results appear
>> correct:
>>
>> 55432 18devel 560655=# select name, category from pg_settings where category ilike '%vacuum%';
>>                   name                  │              category
>> ───────────────────────────────────────┼─────────────────────────────────────
>>   autovacuum                            │ Vacuuming / Automatic Vacuuming
>>   autovacuum_analyze_scale_factor       │ Vacuuming / Automatic Vacuuming
>>   autovacuum_analyze_threshold          │ Vacuuming / Automatic Vacuuming
>>   autovacuum_freeze_max_age             │ Vacuuming / Automatic Vacuuming
>>   autovacuum_max_workers                │ Vacuuming / Automatic Vacuuming
>>   autovacuum_multixact_freeze_max_age   │ Vacuuming / Automatic Vacuuming
>>   autovacuum_naptime                    │ Vacuuming / Automatic Vacuuming
>>   autovacuum_vacuum_cost_delay          │ Vacuuming / Automatic Vacuuming
>>   autovacuum_vacuum_cost_limit          │ Vacuuming / Automatic Vacuuming
>>   autovacuum_vacuum_insert_scale_factor │ Vacuuming / Automatic Vacuuming
>>   autovacuum_vacuum_insert_threshold    │ Vacuuming / Automatic Vacuuming
>>   autovacuum_vacuum_scale_factor        │ Vacuuming / Automatic Vacuuming
>>   autovacuum_vacuum_threshold           │ Vacuuming / Automatic Vacuuming
>>   autovacuum_worker_slots               │ Vacuuming / Automatic Vacuuming
>>   vacuum_cost_delay                     │ Vacuuming / Cost-Based Vacuum Delay
>>   vacuum_cost_limit                     │ Vacuuming / Cost-Based Vacuum Delay
>>   vacuum_cost_page_dirty                │ Vacuuming / Cost-Based Vacuum Delay
>>   vacuum_cost_page_hit                  │ Vacuuming / Cost-Based Vacuum Delay
>>   vacuum_cost_page_miss                 │ Vacuuming / Cost-Based Vacuum Delay
>>   vacuum_failsafe_age                   │ Vacuuming / Freezing
>>   vacuum_freeze_min_age                 │ Vacuuming / Freezing
>>   vacuum_freeze_table_age               │ Vacuuming / Freezing
>>   vacuum_multixact_failsafe_age         │ Vacuuming / Freezing
>>   vacuum_multixact_freeze_min_age       │ Vacuuming / Freezing
>>   vacuum_multixact_freeze_table_age     │ Vacuuming / Freezing
>>
>>
>> 55432 18devel 560655=# select name, category from pg_settings where (short_desc ilike '%vacuum%' or extra_desc ilike '%vacuum%') and category not ilike '%vacuum%';
>>              name             │              category
>> ─────────────────────────────┼─────────────────────────────────────
>>   autovacuum_work_mem         │ Resource Usage / Memory
>>   log_autovacuum_min_duration │ Reporting and Logging / What to Log
>>   maintenance_work_mem        │ Resource Usage / Memory
>>   vacuum_buffer_usage_limit   │ Resource Usage / Memory
> Yea, Alena also mentioned these GUCs that are in different groups. I
> think it is okay for these four to remain in their current locations
> as their current groupings seem descriptive enough.
>
Looking at them, I am willing to agree with you

-- 
Regards,
Alena Rybakina
Postgres Professional

^ permalink  raw  reply  [nested|flat] 14+ messages in thread

* Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection
  2025-01-10 23:22 pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-11 09:02 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-12 19:07   ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Daniel Gustafsson <daniel@yesql.se>
  2025-01-12 19:21     ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Tom Lane <tgl@sss.pgh.pa.us>
  2025-01-13 15:22       ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 19:57         ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-13 20:46           ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-13 22:35             ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-14 18:21               ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alvaro Herrera <alvherre@alvh.no-ip.org>
  2025-01-14 19:01                 ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
  2025-01-14 19:29                   ` Re: pgsql: Consolidate docs for vacuum-related GUCs in new subsection Alena Rybakina <a.rybakina@postgrespro.ru>
@ 2025-01-14 20:35                     ` Melanie Plageman <melanieplageman@gmail.com>
  0 siblings, 0 replies; 14+ messages in thread

From: Melanie Plageman @ 2025-01-14 20:35 UTC (permalink / raw)
  To: Alena Rybakina <a.rybakina@postgrespro.ru>; +Cc: Tom Lane <tgl@sss.pgh.pa.us>; Daniel Gustafsson <daniel@yesql.se>; Alvaro Herrera <alvherre@alvh.no-ip.org>; PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>

On Tue, Jan 14, 2025 at 2:30 PM Alena Rybakina
<a.rybakina@postgrespro.ru> wrote:
>
> Looking at them, I am willing to agree with you

Cool. Thanks to everyone for the review. I've pushed it.

- Melanie





^ permalink  raw  reply  [nested|flat] 14+ messages in thread


end of thread, other threads:[~2025-01-14 20:35 UTC | newest]

Thread overview: 14+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2025-01-10 23:22 pgsql: Consolidate docs for vacuum-related GUCs in new subsection Melanie Plageman <melanieplageman@gmail.com>
2025-01-11 09:02 ` Alvaro Herrera <alvherre@alvh.no-ip.org>
2025-01-12 19:07   ` Daniel Gustafsson <daniel@yesql.se>
2025-01-12 19:21     ` Tom Lane <tgl@sss.pgh.pa.us>
2025-01-13 15:22       ` Melanie Plageman <melanieplageman@gmail.com>
2025-01-13 19:57         ` Melanie Plageman <melanieplageman@gmail.com>
2025-01-13 20:46           ` Alvaro Herrera <alvherre@alvh.no-ip.org>
2025-01-13 22:35             ` Melanie Plageman <melanieplageman@gmail.com>
2025-01-13 23:51               ` Alena Rybakina <a.rybakina@postgrespro.ru>
2025-01-14 18:21               ` Alvaro Herrera <alvherre@alvh.no-ip.org>
2025-01-14 19:01                 ` Melanie Plageman <melanieplageman@gmail.com>
2025-01-14 19:28                   ` Alvaro Herrera <alvherre@alvh.no-ip.org>
2025-01-14 19:29                   ` Alena Rybakina <a.rybakina@postgrespro.ru>
2025-01-14 20:35                     ` Melanie Plageman <melanieplageman@gmail.com>

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox