Re: Fix --missing-stats-only false positive for partitioned expression indexes

From: Corey Huinker <corey(dot)huinker(at)gmail(dot)com>
To: Nathan Bossart <nathandbossart(at)gmail(dot)com>
Cc: Baji Shaik <baji(dot)pgdev(at)gmail(dot)com>, PostgreSQL-development <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: Fix --missing-stats-only false positive for partitioned expression indexes
Date: 2026-06-16 16:23:17
Message-ID: CADkLM=cyzq7EsgxG-_DdquZ9XgZkyfBctDn-hqfahTm=qojDnw@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Jun 16, 2026 at 12:14 PM Nathan Bossart <nathandbossart(at)gmail(dot)com>
wrote:

> On Tue, Jun 16, 2026 at 10:25:52AM -0500, Baji Shaik wrote:
> > I tested "vacuumdb --missing-stats-only" and found that it flags
> > partitioned tables that have expression indexes, even after a full
> > ANALYZE.
>
> Thanks for reporting.
>
> - " OR EXISTS
> (SELECT NULL FROM pg_catalog.pg_attribute a\n"
> + " OR (NOT
> p.inherited"
> + " AND EXISTS
> (SELECT NULL FROM pg_catalog.pg_attribute a\n"
>
> I'm curious why you added this check to the beginning and surrounded the
> rest with parentheses. Wouldn't it be better to follow the example of the
> surrounding clauses and an "AND NOT p.inherited" somewhere in the middle?
>
> --
> nathan

I had a similar question and am toying around with refactoring it now.

The rest of the patch checks out aside from that.

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2026-06-16 16:24:45 Re: Improving the names generated for indexes on expressions
Previous Message Sami Imseih 2026-06-16 16:21:57 Re: mxid_score can become Infinity in pg_stat_autovacuum_scores