From: | Alena Rybakina <a(dot)rybakina(at)postgrespro(dot)ru> |
---|---|
To: | Sami Imseih <samimseih(at)gmail(dot)com> |
Cc: | Ilia Evdokimov <ilya(dot)evdokimov(at)tantorlabs(dot)com>, Alexander Korotkov <aekorotkov(at)gmail(dot)com>, Jim Nasby <jnasby(at)upgrade(dot)com>, Andrei Zubkov <zubkov(at)moonset(dot)ru>, Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com>, Melanie Plageman <melanieplageman(at)gmail(dot)com>, jian he <jian(dot)universality(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>, a(dot)lepikhov(at)postgrespro(dot)ru |
Subject: | Re: Vacuum statistics |
Date: | 2025-01-10 15:31:59 |
Message-ID: | 0d218dcf-a06e-4876-a773-186d53002ea2@postgrespro.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Sorry, I made a typo due to lack of sleep, I've marked below where
exactly just in case.
On 10.01.2025 15:04, Alena Rybakina wrote:
>
> Hi, I have updated the patch. Fix minor mistakes in the document,
> added the wraparound_failsafe_count statistics - it accounts the
> number of times when the vacuum operates heap relation to prevent
> workaround problem, fixed "shemaname".
>
I didn't mean workaround problem but wraparound problem.
>>> Secondly, where to put the total time of vacuum for indexes and databases?
>>> It would be incorrect not to take them into account at all. What if we remove the total time from
>>> the heap statistics and add it to pg_stat_tables and only leave the vacuum statistics total time of
>>> vacuum operation of indexes and databases?
>>> It seems strange to me that they will have to be viewed from different views.
>>>
>>> I think it is necessary to look at the total time for tables into perspective of how much
>>> time vacuum spent in total on processing indexes, since indexes can be bloated, for example.
>>> I think it is better to leave these statistics here.
>> You make valid points. I now think because track_vacuum_statistics is
>> optional, we should track total_time in 2 places. First place in the new
>> view being proposed here and the second place is in pg_stat_all_tables
>> as being proposed here [3]. This way if track_vacuum_statistics is off, the
>> total_time of vacuum could still be tracked by pg_stat_all_tables.
>>
>> By the way, the current patch does not track materialized view,
>> but it should as materialized views can also be vacuumed.
>>
>> Regards,
>>
>> Sami
>>
>> [1]https://www.postgresql.org/docs/current/runtime-config-client.html#GUC-VACUUM-FAILSAFE-AGE
>> [2]https://github.com/postgres/postgres/blob/master/src/backend/access/heap/vacuumlazy.c#L2437-L2444
>> [3]https://commitfest.postgresql.org/52/5485/
>>
>>
> I don't agree with this.
>
> Firstly, the hook is enabled by default, that is, it must be specially
> disabled so that the vacuum statistics are not collected.
>
> Secondly, it will cause confusion. First, the hook was disabled and
> statistics were collected in one place - pg_stat_all_tables, and then
> it was enabled and the user notices that the statistics there stopped
> accumulating,
> he is in a panic, "suddenly the vacuum does not work, what to do?".
> The second point here bothers me, how to take into account this
> statistics with the current detailed vacuum statistics? After all,
> adding these values is wrong -
> they do not show the correct statistics regarding the same pages
> processed by vacuum, ignoring it later means that they will be
> redundant. I think it is better to save it here, since this will save
> us from possible confusion.
>
> Secondly, it will immediately show other important parameters
> regarding this statistics - how long the vacuum was sleep (delay_time
> in my patches), how much time the vacuum spent on processing indexes
> during its processing.
> Without this information, this assessment will not be voluminous and
> indicative enough.
>
I didn't mean hook but guc here.
--
Regards,
Alena Rybakina
Postgres Professional
From | Date | Subject | |
---|---|---|---|
Next Message | Nathan Bossart | 2025-01-10 15:38:14 | Re: [PATCH] Hex-coding optimizations using SVE on ARM. |
Previous Message | Daniel Gustafsson | 2025-01-10 15:29:05 | Re: Adding support for SSLKEYLOGFILE in the frontend |