agora inbox for pgsql-hackers@postgresql.org  
help / color / mirror / Atom feed
From: Nathan Bossart <nathandbossart@gmail.com>
To: Masahiko Sawada <sawada.mshk@gmail.com>
Cc: PostgreSQL-development <pgsql-hackers@postgresql.org>
Subject: Re: pg_stat_get_autovacuum_scores ignores the main table's reloptions for TOAST tables
Date: Fri, 28 Aug 2026 08:14:17 -0500
Message-ID: <apGJqfd2xyAcUGKZ@nathan> (raw)
In-Reply-To: <CAD21AoB1CJRVfCDh8qYuD3eueiygXxk7F3nybgjN0RZXSD-QUw@mail.gmail.com>
References: <CAD21AoB1CJRVfCDh8qYuD3eueiygXxk7F3nybgjN0RZXSD-QUw@mail.gmail.com>

On Thu, Aug 27, 2026 at 03:42:23PM -0700, Masahiko Sawada wrote:
> I found that pg_get_autovacuum_scores reports wrong values for TOAST
> tables. In do_autovacuum(), we fall back to the main table's reloption
> when the TOAST table has no reloptions of its own, and
> table_recheck_autovac() does the same. However,
> pg_stat_get_autovacuum_scores() only calls extract_autovac_opts() and
> passes NULL when the TOAST table has none.
> 
> So the view computes the TOAST table's scores from rht eGUC defaults
> whenever the user sets autovacuum_* on the main table without setting
> the corresponding toast.* option. Here is a simple reproducer:

You're right.  I will work on a patch for this and get it fixed ASAP.

-- 
nathan






view thread (8+ messages)  latest in thread

Message-ID: <apGJqfd2xyAcUGKZ@nathan>
Permalink:  ../apGJqfd2xyAcUGKZ@nathan/
Also on:    postgresql.org/message-id/apGJqfd2xyAcUGKZ@nathan

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: pgsql-hackers@postgresql.org
  Cc: nathandbossart@gmail.com, sawada.mshk@gmail.com
  Subject: Re: pg_stat_get_autovacuum_scores ignores the main table's reloptions for TOAST tables
  In-Reply-To: <apGJqfd2xyAcUGKZ@nathan>

* 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