Re: Add pg_stat_autovacuum_priority

From: Sami Imseih <samimseih(at)gmail(dot)com>
To: Nathan Bossart <nathandbossart(at)gmail(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Alexander Lakhin <exclusion(at)gmail(dot)com>, Bharath Rupireddy <bharath(dot)rupireddyforpostgres(at)gmail(dot)com>, Robert Treat <rob(at)xzilla(dot)net>, satyanarlapuram(at)gmail(dot)com, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>, tndrwang(at)gmail(dot)com
Subject: Re: Add pg_stat_autovacuum_priority
Date: 2026-04-08 18:28:06
Message-ID: CAA5RZ0tUq7SEHvAPkYpCw7Y4XOoWLPpsfxO2ZQ5AzQRcQMMAgg@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> diff --git a/src/backend/postmaster/autovacuum.c b/src/backend/postmaster/autovacuum.c
> index bd626a16363..6d4a34257fb 100644
> --- a/src/backend/postmaster/autovacuum.c
> +++ b/src/backend/postmaster/autovacuum.c
> @@ -3327,7 +3327,15 @@ relation_needs_vacanalyze(Oid relid,
> anltuples, anlthresh, scores->anl,
> scores->xid, scores->mxid);
>
> - pfree(tabentry);
> + /*
> + * Avoid leaking pgstat entries until the end of autovacuum. Elsewhere,
> + * we let the commit/abort machinery take care of freeing it. While
> + * autovacuum workers set stats_fetch_consistency to "none", it might be
> + * set to a different value in other processes, so we can't safely free it
> + * here for them.
> + */
> + if (AmAutoVacuumWorkerProcess())
> + pfree(tabentry);
> }

This works too, but v1-0001 is more generalized and we don't have to
care about who the caller is when deciding to free or not.

--
Sami

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Nathan Bossart 2026-04-08 18:37:31 Re: Add pg_stat_autovacuum_priority
Previous Message Nathan Bossart 2026-04-08 18:18:58 Re: Add pg_stat_autovacuum_priority