public inbox for [email protected]  
help / color / mirror / Atom feed
From: Lukas Fittl <[email protected]>
To: Michael Paquier <[email protected]>
Cc: Андрей Казачков <[email protected]>
Cc: Sami Imseih <[email protected]>
Cc: PostgreSQL Hackers <[email protected]>
Cc: Marko M <[email protected]>
Subject: Re: [PATCH] Optionally record Plan IDs to track plan changes for a query
Date: Thu, 19 Mar 2026 00:15:07 -0700
Message-ID: <CAP53PkyOB4kbYDoMXQaaN68rkU-Gt_Jw9iNzOgSwM4ULW-QrdQ@mail.gmail.com> (raw)
In-Reply-To: <[email protected]>
References: <[email protected]>
	<[email protected]>
	<CAP53Pkw1QJHH9UDjkArS=XdAxtK7XWMpZLGHnVMDmhRTp_HYYw@mail.gmail.com>
	<[email protected]>
	<CAA5RZ0vM9AsEqvKued2drKZJ1opt3wbYaDbxGzi-khkNzwn7og@mail.gmail.com>
	<[email protected]>
	<CAA5RZ0sfRbd1xcq_oHNA0TPr57yM8qkg-GoD6A0nUfyxZhs33Q@mail.gmail.com>
	<CAP53PkxocbNr+eRag3FEJp3-7S1U80FspOg8UQjO902TWMG=6A@mail.gmail.com>
	<CAA5RZ0u6yJdFL=p5vdpbZFS-2YY+Z6vtzmt4gejgZa3RcNiWMQ@mail.gmail.com>
	<[email protected]>
	<[email protected]>

On Thu, Dec 25, 2025 at 3:02 PM Michael Paquier <[email protected]> wrote:
> +    /*
> +     * COMPUTE_PLAN_ID_REGRESS means COMPUTE_PLAN_ID_YES, but we don't show
> +     * the queryid in any of the EXPLAIN plans to keep stable the results
> +     * generated by regression test suites.
> +     */
> +    if (es->verbose && queryDesc->plannedstmt->planId != UINT64CONST(0) &&
> +        compute_plan_id != COMPUTE_PLAN_ID_REGRESS)
> +    {
> +        /*
> +         * Output the queryid as an int64 rather than a uint64 so we match
> +         * what would be seen in the BIGINT pg_stat_activity.plan_id column.
> +         */
> +        ExplainPropertyInteger("Plan Identifier", NULL,
> +                               queryDesc->plannedstmt->planId, es);
> +    }
>
> Now, looking at this block of code, I am wondering if you don't have a
> point here even without compute_plan_id..  Could there be merit in
> showing this information for an EXPLAIN if this field is not zero?
> With EXPLAIN being pluggable in a hook, I doubt that it matters much,
> but I am wondering if providing this information could make the work
> of some extensions easier.

I missed this at the time, but happened to run across this by coincidence.

Consider this a late +1 on the idea, i.e. I do think that emitting the
plan ID as "plan identifier" in EXPLAIN seems reasonable when a plugin
sets it - the cost is negligible, and it'd make it easier to work with
extensions like pg_stat_plans.


Thanks,
Lukas

--
Lukas Fittl





view thread (36+ messages)  latest in thread

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], [email protected], [email protected], [email protected]
  Subject: Re: [PATCH] Optionally record Plan IDs to track plan changes for a query
  In-Reply-To: <CAP53PkyOB4kbYDoMXQaaN68rkU-Gt_Jw9iNzOgSwM4ULW-QrdQ@mail.gmail.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