Re: Add estimated hit ratio to Memoize in EXPLAIN to explain cost adjustment

Ilia Evdokimov <ilya.evdokimov@tantorlabs.com>

From: Ilia Evdokimov <ilya.evdokimov@tantorlabs.com>
To: David Rowley <dgrowleyml@gmail.com>, Andrei Lepikhov <lepihov@gmail.com>
Cc: Robert Haas <robertmhaas@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>, Lukas Fittl <lukas@fittl.com>, Daniel Gustafsson <daniel@yesql.se>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>, Nikolay Samokhvalov <samokhvalov@gmail.com>
Date: 2025-07-23T11:07:56Z
Lists: pgsql-hackers
On 23.07.2025 03:11, David Rowley wrote:
> On Wed, 23 Jul 2025 at 02:35, Andrei Lepikhov <lepihov@gmail.com> wrote:
>> The 'Buffers:' way looks more natural to me. I don't like duplicated
>> text in the explain format - it is already cluttered by multiple
>> unnecessary elements that distract attention from the problematic plan
>> elements, such as unplaggable costs output if we only need row
>> predictions, '.00' in estimations, etc.
> Seems logical.


+1


>
>> Will you add the ExplainOpenGroup call to the final version of the patch?
> I'm leaning towards not doing that as a reader might expect all the
> "Estimates" to be within that group, but the estimated cost and row
> counts won't be in there. Maybe it's possible to circumvent that
> expectation by naming the group something like "MemoizeEstimates", but
> IMO, that seems excessive for 4 properties.


I agree. I would consider adding a group if we displayed information in 
a looped format, like for Workers, or if we had some particularly useful 
data for parsers - for example, timings or memory usage. But for four 
estimates, grouping seems unnesseray.

Given that, patch v11 still looks like the most appropriate version to me.

--
Best regards,
Ilia Evdokimov,
Tantor Labs LLC.