Subject: RE: analyze-in-stages post upgrade questions

From: "Zechman, Derek S" <[email-masked]>
Date: Wed, 9 Jul 2025 11:30:22 +0000

> > Well, that wouldn't explain why it doesn't work on partitioned tables.

> > I am under the impression that it should.

> > Derek, can cou share the pg_stats entries for the partitioned table?

> There are no entries in pg_stats for the parent table until after I manually run an analyze on it – Example below

You are right.  I looked at the code, and "vacuumdb" does not process

partitiond tables, even if --analyze-only is specified.  I find that

surprising, aince the SQL command ANALYZE (without a table name) will

also collect statistics for partitioned tables.

I think that it would be a good idea to change that behavior.

In particular, it makes a lot of sense to collect statistics for

partitioned tables after a "pg_upgrade".

Attached is a patch to make "vacuumdb --analyze-only" consider

partitioned tables as well.

Yours,

Laurenz Albe

Is there a plan to include this patch in future releases/patches of postgres?

Thanks,

(Derek) Sean

---

From: Laurenz Albe <[email-masked]>
Date: Wed, 09 Jul 2025 17:26:02 +0200

> Is there a plan to include this patch in future releases/patches of postgres? 

I have added the patch to the current commitfest:
https://commitfest.postgresql.org/patch/5871/

So far, it has not got any peer review.  So yes, I'd like to include
the patch, but I cannot make it happen by myself.
Essentially, patches get applied if
a) they get peer review and
b) a committer applies them

If you want this to happen, the best thing you could do would be
to review the patch and see if it works for you, if it does what you
need and so on:
https://wiki.postgresql.org/wiki/Reviewing_a_Patch

Yours,
Laurenz Albe