public inbox for [email protected]  
help / color / mirror / Atom feed
From: Zechman, Derek S <[email protected]>
To: Ron Johnson <[email protected]>
To: [email protected] <[email protected]>
Subject: RE: analyze-in-stages post upgrade questions
Date: Sat, 28 Jun 2025 01:11:19 +0000
Message-ID: <PH0PR04MB829491D78009BB616BF1880CC044A@PH0PR04MB8294.namprd04.prod.outlook.com> (raw)
In-Reply-To: <CANzqJaCC8QT8yugqF8vM_5Rs1eiTy9iWbQ=Ty8Bre93u7rh_FQ@mail.gmail.com>
References: <CO1PR04MB8281387B9AD9DE30976966BBC045A@CO1PR04MB8281.namprd04.prod.outlook.com>
	<CANzqJaCC8QT8yugqF8vM_5Rs1eiTy9iWbQ=Ty8Bre93u7rh_FQ@mail.gmail.com>




We recently performed an upgrade from pg14 (14.18) to pg16 (16.9) and performed the analyze-in-stages post upgrade.  It has been noticed that some plans changed to use hash joins instead of nested loops.  Further investigation found it was because the parent table of partitioned tables did not have stats.  After running an ANALYZE on the parent tables we got similar plan an execution times as before.

I have two questions
1 - Why does analyze-in-stages not analyze the parent tables?
2 – What happens if we do not run analyze-in-stages post upgrade and just run an analyze?

“It takes more time, and you don't have any statistics on a given table until the ANALYZE on that table completes.

How long did "vacuumdb --analyze-only --jobs=$mumble your_db" take?”

Thanks – that makes sense.  I understand what analyze in stages does just wish it would include parent tables.

"vacuumdb --all --analyze-only --jobs=7" took about 75 minutes where the analyze-in-stages after upgrade took 115 minutes.  Neither of these activities analyzed the parent tables.
Reading more and it seems vacuumdb doesn’t analyze parent tables and a manual analyze on those is needed if we want better planner statistics.


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]
  Subject: RE: analyze-in-stages post upgrade questions
  In-Reply-To: <PH0PR04MB829491D78009BB616BF1880CC044A@PH0PR04MB8294.namprd04.prod.outlook.com>

* 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