Up to now, the explain " " (two space) format is not mixed with "=".
And, other places which show "Memory" do not use "=". David will
remember prior discussions.
https://www.postgresql.org/message-id/20200402054120.GC14618@telsasoft.com
https://www.postgresql.org/message-id/20200407042521.GH2228@telsasoft.com
"Memory: used=%lld bytes allocated=%lld bytes",
vs
"Buckets: %d (originally %d) Batches: %d (originally %d) Memory
Usage:%ldkB\n",
There was some discussion about "bytes" - maybe it should instead show
kB?
(Also, I first thought that "peek" should be "peak", but eventually I
realized that's it's as intended.)
On Fri, Jan 12, 2024 at 10:53:08PM +0530, Abhijit Menon-Sen wrote:
> (Those "bytes" look slightly odd to me in the midst of all the x=y
> pieces, but that's probably not worth thinking about.)
On Mon, Jan 29, 2024 at 04:55:27PM +0000, Alvaro Herrera wrote:
> Add EXPLAIN (MEMORY) to report planner memory consumption
>
> This adds a new "Memory:" line under the "Planning:" group (which
> currently only has "Buffers:") when the MEMORY option is specified.
>
> In order to make the reporting reasonably accurate, we create a separate
> memory context for planner activities, to be used only when this option
> is given. The total amount of memory allocated by that context is
> reported as "allocated"; we subtract memory in the context's freelists
> from that and report that result as "used". We use
> MemoryContextStatsInternal() to obtain the quantities.
>
> The code structure to show buffer usage during planning was not in
> amazing shape, so I (Álvaro) modified the patch a bit to clean that up
> in passing.
>
> Author: Ashutosh Bapat
> Reviewed-by: David Rowley, Andrey Lepikhov, Jian He, Andy Fan
> Discussion: https://www.postgresql.org/message-id/CAExHW5sZA=5LJ_ZPpRO-w09ck8z9p7eaYAqq3Ks9GDfhrxeWBw@mail.gmail.com