Re: making EXPLAIN extensible

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: Jeff Davis <pgsql(at)j-davis(dot)com>, Thom Brown <thom(at)linux(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: making EXPLAIN extensible
Date: 2025-03-05 21:00:21
Message-ID: 476382.1741208421@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Robert Haas <robertmhaas(at)gmail(dot)com> writes:
> On Wed, Mar 5, 2025 at 1:53 PM Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>> I'm quite confused by the #include additions in auto_explain.c and
>> file_fdw.c, and I strongly object to the ones in explain_state.h.
>> Surely those are unnecessary?

> They are necessary but they should have been part of 0001.

Ah. I was mistakenly assuming that 0001 would compile on its own ;-)

> Because
> 0001 moves the definition of ExplainState to explain_state.h, files
> that need to access to the members of that structure now need to
> include that header file. As for the includes in explain_state.h, it
> needs definitions for DefElem, ParseState, and PlannedStmt.

Got it. So does that mean we can remove any #include's from explain.h
after moving the struct definition?

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message James Hunter 2025-03-05 21:11:42 Re: Make tuple deformation faster
Previous Message Greg Sabino Mullane 2025-03-05 20:40:52 Re: optimize file transfer in pg_upgrade