Re: RFC: extensible planner state

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: RFC: extensible planner state
Date: 2025-09-18 16:16:29
Message-ID: CA+TgmoZ8=ciC+Jc676-j5hfrOxcO-nq=GU2h+w81e8Ructw5+A@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Sep 16, 2025 at 4:12 PM Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
> On Fri, Sep 5, 2025 at 4:19 PM Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
> > While mulling this over, I realized that this only works if you don't
> > mind propagating information into the final plan regardless without
> > knowing whether or not EXPLAIN was actually used. That's pretty sad,
> [...]
> > The simplest idea that comes to mind for me is to make pg_plan_query()
> > take an ExplainState * argument and pass it through to planner().
>
> Here's a new version that implements this idea and also cleans up a
> few points that Melanie noted.

I think that was rebased over a patch I inadvertently committed to my
local master branch. Trying again.

--
Robert Haas
EDB: http://www.enterprisedb.com

Attachment Content-Type Size
v5-0001-Allow-private-state-in-certain-planner-data-struc.patch application/octet-stream 10.8 KB
v5-0005-Add-extension_state-member-to-PlannedStmt.patch application/octet-stream 1.3 KB
v5-0002-Remove-PlannerInfo-s-join_search_private-method.patch application/octet-stream 8.6 KB
v5-0004-Add-planner_setup_hook-and-planner_shutdown_hook.patch application/octet-stream 3.4 KB
v5-0003-Add-ExplainState-argument-to-pg_plan_query-and-pl.patch application/octet-stream 12.2 KB
v5-0006-not-for-commit-count-distinct-joinrels-and-joinre.patch application/octet-stream 8.5 KB

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2025-09-18 16:19:45 Re: PG 18 relnotes and RC1
Previous Message Erik Rijkers 2025-09-18 16:14:49 Re: PG 18 relnotes and RC1 - (typo)