Re: Why doesn't autovacuum/analyze run in due time after calling pg_stat_reset?

From: Rihad <grihad(at)gmail(dot)com>
To: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>, pgsql-general General <pgsql-general(at)postgresql(dot)org>
Subject: Re: Why doesn't autovacuum/analyze run in due time after calling pg_stat_reset?
Date: 2023-08-23 14:06:43
Message-ID: 3fafd9d5-ba37-8abf-ba46-ca51b6f706c9@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 8/21/23 20:50, Adrian Klaver wrote:
> On 8/21/23 09:31, Rihad wrote:
>> On 8/21/23 20:17, Adrian Klaver wrote:
>>> On 8/21/23 09:09, Rihad wrote:
>>>> On 8/21/23 20:00, Adrian Klaver wrote:
>>>
>
>>
>> Sorry, they are all as per default, commented out in the config.
>>
>> There are no long running queries, otherwise they wouldn't be
>> vacuumed/analyzed in due time after running first manual analyze,
>> which updates n_live_tup to match reltuples.
>>
>
> My only remaining suggestion is to closely monitor the Postgres log
> and see if provides a clue.
>
I'm awfully sorry, I read the autovacuum manual carefully, it isn't
n_live_tup, but reltuples that is taken into account during the calculation.

vacuum threshold = vacuum base threshold + vacuum scale factor * number of tuples

where the vacuum base threshold is autovacuum_vacuum_threshold
<https://www.postgresql.org/docs/current/runtime-config-autovacuum.html#GUC-AUTOVACUUM-VACUUM-THRESHOLD>,
the vacuum scale factor is autovacuum_vacuum_scale_factor
<https://www.postgresql.org/docs/current/runtime-config-autovacuum.html#GUC-AUTOVACUUM-VACUUM-SCALE-FACTOR>,
*and the number of tuples is **|pg_class|**.**|reltuples|**.*

Your first suggestion was to RTFM.

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Christian Barthel 2023-08-23 14:24:46 PL/pgSQL RETURN QUERY and DOMAIN CHECKs
Previous Message Ian Lawrence Barwick 2023-08-23 11:07:09 Re: [EXTERNAL] Oracle FDW version