pgsql: autovacuum: handle analyze for partitioned tables

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: autovacuum: handle analyze for partitioned tables
Date: 2021-04-08 05:20:39
Message-ID: E1lUN5r-0005bJ-9G@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers pgsql-hackers

autovacuum: handle analyze for partitioned tables

Previously, autovacuum would completely ignore partitioned tables, which
is not good regarding analyze -- failing to analyze those tables means
poor plans may be chosen. Make autovacuum aware of those tables by
propagating "changes since analyze" counts from the leaf partitions up
the partitioning hierarchy.

This also introduces necessary reloptions support for partitioned tables
(autovacuum_enabled, autovacuum_analyze_scale_factor,
autovacuum_analyze_threshold). It's unclear how best to document this
aspect.

Author: Yuzuko Hosoya <yuzukohosoya(at)gmail(dot)com>
Reviewed-by: Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com>
Reviewed-by: Tomas Vondra <tomas(dot)vondra(at)enterprisedb(dot)com>
Reviewed-by: Álvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
Discussion: https://postgr.es/m/CAKkQ508_PwVgwJyBY=0Lmkz90j8CmWNPUxgHvCUwGhMrouz6UA@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/0827e8af70f4653ba17ed773f123a60eadd9f9c9

Modified Files
--------------
src/backend/access/common/reloptions.c | 15 +++--
src/backend/catalog/system_views.sql | 4 +-
src/backend/commands/analyze.c | 40 ++++++++----
src/backend/postmaster/autovacuum.c | 105 +++++++++++++++++++++++++++++---
src/backend/postmaster/pgstat.c | 108 ++++++++++++++++++++++++++++++---
src/include/pgstat.h | 25 +++++++-
src/test/regress/expected/rules.out | 4 +-
7 files changed, 257 insertions(+), 44 deletions(-)

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Julien Rouhaud 2021-04-08 05:22:49 Re: pgsql: Move pg_stat_statements query jumbling to core.
Previous Message Andres Freund 2021-04-08 05:17:35 Re: pgsql: Move pg_stat_statements query jumbling to core.

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrey V. Lepikhov 2021-04-08 05:24:22 Re: Increase value of OUTER_VAR
Previous Message Alvaro Herrera 2021-04-08 05:20:14 Re: Autovacuum on partitioned table (autoanalyze)