From: | Tatsuo Ishii <ishii(at)postgresql(dot)org> |
---|---|
To: | ashutosh(dot)bapat(dot)oss(at)gmail(dot)com |
Cc: | dgrowleyml(at)gmail(dot)com, pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: Add memory/disk usage for WindowAgg nodes in EXPLAIN |
Date: | 2024-07-09 06:44:09 |
Message-ID: | 20240709.154409.1091516017393224028.ishii@postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
>> Yes, I think so. I'd keep each as a separate patch so they can be
>> considered independently. Doing all of them should hopefully ensure we
>> strike the right balance of what code to put in explain.c and what
>> code to put in tuplestore.c.
> +1
>
> + if (es->format != EXPLAIN_FORMAT_TEXT)
> + {
> + ExplainPropertyText("Storage", storageType, es);
> + ExplainPropertyInteger("Maximum Storage", "kB", spaceUsedKB, es);
> + }
> + else
> + {
> + ExplainIndentText(es);
> + appendStringInfo(es->str,
> + "Storage: %s Maximum Storage: " INT64_FORMAT "kB\n",
> + storageType,
> + spaceUsedKB);
> + }
>
> It will be good to move this code to a function which will be called
> by show_*_info functions().
I have already implemented that in this direction in my working in
progress patch:
/*
* Show information regarding storage method and maximum memory/disk space
* used.
*/
static void
show_storage_info(Tuplestorestate *tupstore, ExplainState *es)
Which can be shared by Material and CTE scan node. I am going to post
it after I take care Recursive Union and Table Function Scan node.
> We might even convert it into a tuplestore
> specific implementation hook after David's work.
Best reagards,
--
Tatsuo Ishii
SRA OSS LLC
English: http://www.sraoss.co.jp/index_en/
Japanese:http://www.sraoss.co.jp
From | Date | Subject | |
---|---|---|---|
Next Message | Andres Freund | 2024-07-09 06:51:01 | Re: Meson far from ready on Windows |
Previous Message | Andrey M. Borodin | 2024-07-09 06:36:50 | Re: Amcheck verification of GiST and GIN |