public inbox for [email protected]  
help / color / mirror / Atom feed
From: Ilia Evdokimov <[email protected]>
To: Andrei Zubkov <[email protected]>
To: Alena Rybakina <[email protected]>
Cc: pgsql-hackers <[email protected]>
Cc: [email protected]
Subject: Re: Vacuum statistics
Date: Tue, 13 Aug 2024 16:18:48 +0300
Message-ID: <[email protected]> (raw)
In-Reply-To: <[email protected]>
References: <[email protected]>
	<[email protected]>
	<[email protected]>

On 10.8.24 22:37, Andrei Zubkov wrote:

> Hi, Ilia!
>
>> Do you consider not to create new table in pg_catalog but to save
>> statistics in existing table? I mean pg_class or
>> pg_stat_progress_analyze, pg_stat_progress_vacuum?
>>
> Thank you for your interest on our patch!
>
> *_progress views is not our case. They hold online statistics while
> vacuum is in progress. Once work is done on a table the entry is gone
> from those views. Idea of this patch is the opposite - it doesn't
> provide online statistics but it accumulates statistics about rosources
> consumed by all vacuum passes over all relations. It's much closer to
> the pg_stat_all_tables than pg_stat_progress_vacuum.
>
> It seems pg_class is not the right place because it is not a statistic
> view - it holds the current relation state and haven't anything about
> the relation workload.
>
> Maybe the pg_stat_all_tables is the right place but I have several
> thoughts about why it is not:
> - Some statistics provided by this patch is really vacuum specific. I
> don't think we want them in the relation statistics view.
> - Postgres is extreamly extensible. I'm sure someday there will be
> table AMs that does not need the vacuum at all.
>
> Right now vacuum specific workload views seems optimal choice to me.
>
> Regards,


Agreed. They are not god places to store such statistics.


I have some suggestions:

 1. pgstatfuncs.c in functions tuplestore_put_for_database() and
    tuplestore_put_for_relation you can remove 'nulls' array if you're
    sure that columns cannot be NULL.
 2. These functions are almost the same and I would think of writing one
    function depending of type 'ExtVacReportType'


view thread (8+ messages)  latest in thread

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected], [email protected]
  Subject: Re: Vacuum statistics
  In-Reply-To: <[email protected]>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

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