From: | Julien Rouhaud <rjuju123(at)gmail(dot)com> |
---|---|
To: | Jian Guo <gjian(at)vmware(dot)com> |
Cc: | "pgsql-hackers(at)lists(dot)postgresql(dot)org" <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Zhenghua Lyu <zlyu(at)vmware(dot)com> |
Subject: | Re: Summary Sort workers Stats in EXPLAIN ANALYZE |
Date: | 2022-03-25 09:04:53 |
Message-ID: | 20220325090453.3bwhbs4nphrk4cmp@jrouhaud |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi,
On Thu, Mar 24, 2022 at 07:50:11AM +0000, Jian Guo wrote:
> For a simple demo, with this explain statement:
>
> -- Test sort stats summary
> set force_parallel_mode=on;
> select explain_filter('explain (analyze, summary off, timing off, costs off, format json) select * from tenk1 order by unique1');
>
> Before this patch, we got plan like this:
>
>
> "Node Type": "Sort", +
> "Parent Relationship": "Outer", +
> "Parallel Aware": false, +
> "Async Capable": false, +
> "Actual Rows": 10000, +
> "Actual Loops": 1, +
> "Sort Key": ["unique1"], +
> "Workers": [ +
> { +
> "Worker Number": 0, +
> "Sort Method": "external merge",+
> "Sort Space Used": 2496, +
> "Sort Space Type": "Disk" +
> } +
> ], +
> After this patch, the effected plan is this:
>
> "Node Type": "Sort", +
> "Parent Relationship": "Outer", +
> "Parallel Aware": false, +
> "Async Capable": false, +
> "Actual Rows": N, +
> "Actual Loops": N, +
> "Sort Key": ["unique1"], +
> "Workers planned": N, +
> "Sort Method": "external merge", +
> "Average Sort Space Used": N, +
> "Peak Sort Space Used": N, +
> "Sort Space Type": "Disk", +
I think the idea is interesting, however there are a few problems in the patch.
First, I think that it should only be done in the VERBOSE OFF mode. If you ask
for a VERBOSE output you don't need both the details and the summarized
version.
Other minor problems:
- why (only) emitting the number of workers planned and not the number of
workers launched?
- the textual format is missing details about what the numbers are, which is
particularly obvious since avgSpaceUsed and peakSpaceUsed don't have any unit
or even space between them:
+ "Sort Method: %s %s: " INT64_FORMAT INT64_FORMAT "kB\n",
+ sortMethod, spaceType, avgSpaceUsed, peakSpaceUsed);
From | Date | Subject | |
---|---|---|---|
Next Message | Julien Rouhaud | 2022-03-25 09:30:30 | Re: Summary Sort workers Stats in EXPLAIN ANALYZE |
Previous Message | Peter Eisentraut | 2022-03-25 09:01:09 | Re: [RFC] building postgres with meson -v8 |