Is your feature request related to a problem? Please describe.
I don't see a way to detect a huge memory use.
So a user would be happy to eradicate temp files, but would not be conscious that he now uses gigabytes of RAM.
Describe the solution you'd like
-
On nodes, change IO & Buffers to: IO & Memory
Add a Memory line for each type, first of all Sort Memory.
-
This place seems logical because there are already the temp tables here.
For example, in https://explain.dalibo.com/plan/ggc4a71be9hfaecd#plan/node/2, temp tables are in local buffers…
Perhaps add a line converting these local tables as Temp Memory.
-
Add another line for the memory of the Planning phase: eg. https://explain.dalibo.com/plan/dee6c1ad8cg1g2bd#plan/node/2 (not a problem usually but good to know)
-
There must be some place to show the cumulated memory use in the whole plan (this is a worst case, the memory used by first nodes may be released before the last nodes begin).
-
I have probably forgotten other places where memory is used.
-
It's known that, in many places, the used memory is not reported by EXPLAIN (like the shared memory for the parallel workers communication).
-
Anyway: known memory consumption above some threshold (hard to say how much… 500 MB ?) should trigger another small red or orange icon on the node.
Describe alternatives you've considered
- Another Memory entry among time/rows/buffers/IO ?
Is your feature request related to a problem? Please describe.
I don't see a way to detect a huge memory use.
The Sort uses 3 Go in memory. This is visible in Misc but not obvious.
So a user would be happy to eradicate temp files, but would not be conscious that he now uses gigabytes of RAM.
Describe the solution you'd like
On nodes, change IO & Buffers to: IO & Memory
Add a Memory line for each type, first of all Sort Memory.
This place seems logical because there are already the temp tables here.
For example, in https://explain.dalibo.com/plan/ggc4a71be9hfaecd#plan/node/2, temp tables are in local buffers…
Perhaps add a line converting these local tables as Temp Memory.
Add another line for the memory of the Planning phase: eg. https://explain.dalibo.com/plan/dee6c1ad8cg1g2bd#plan/node/2 (not a problem usually but good to know)
There must be some place to show the cumulated memory use in the whole plan (this is a worst case, the memory used by first nodes may be released before the last nodes begin).
I have probably forgotten other places where memory is used.
It's known that, in many places, the used memory is not reported by EXPLAIN (like the shared memory for the parallel workers communication).
Anyway: known memory consumption above some threshold (hard to say how much… 500 MB ?) should trigger another small red or orange icon on the node.
Describe alternatives you've considered