public inbox for [email protected]
help / color / mirror / Atom feedFrom: Robert Haas <[email protected]>
To: [email protected]
Subject: pgsql: pg_overexplain: Additional EXPLAIN options for debugging.
Date: Wed, 26 Mar 2025 18:01:38 +0000
Message-ID: <[email protected]> (raw)
pg_overexplain: Additional EXPLAIN options for debugging.
There's a fair amount of information in the Plan and PlanState trees
that isn't printed by any existing EXPLAIN option. This means that,
when working on the planner, it's often necessary to rely on facilities
such as debug_print_plan, which produce excessively voluminous
output. Hence, use the new EXPLAIN extension facilities to implement
EXPLAIN (DEBUG) and EXPLAIN (RANGE_TABLE) as extensions to the core
EXPLAIN facility.
A great deal more could be done here, and the specific choices about
what to print and how are definitely arguable, but this is at least
a starting point for discussion and a jumping-off point for possible
future improvements.
Reviewed-by: Sami Imseih <[email protected]>
Reviewed-by: Tom Lane <[email protected]>
Reviweed-by: Andrei Lepikhov <[email protected]> (who didn't like it)
Discussion: http://postgr.es/m/CA+TgmoZfvQUBWQ2P8iO30jywhfEAKyNzMZSR+uc2xr9PZBw6eQ@mail.gmail.com
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/8d5ceb113e3f7ddb627bd40b26438a9d2fa05512
Modified Files
--------------
contrib/Makefile | 1 +
contrib/meson.build | 1 +
contrib/pg_overexplain/.gitignore | 4 +
contrib/pg_overexplain/Makefile | 21 +
contrib/pg_overexplain/expected/pg_overexplain.out | 483 +++++++++++++
contrib/pg_overexplain/meson.build | 28 +
contrib/pg_overexplain/pg_overexplain.c | 763 +++++++++++++++++++++
contrib/pg_overexplain/sql/pg_overexplain.sql | 105 +++
doc/src/sgml/contrib.sgml | 1 +
doc/src/sgml/filelist.sgml | 1 +
doc/src/sgml/pgoverexplain.sgml | 186 +++++
src/tools/pgindent/typedefs.list | 1 +
12 files changed, 1595 insertions(+)
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]
Subject: Re: pgsql: pg_overexplain: Additional EXPLAIN options for debugging.
In-Reply-To: <[email protected]>
* 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