Re: Missing HashAgg EXPLAIN ANALYZE details for parallel plans - Mailing list pgsql-hackers

From Justin Pryzby
Subject Re: Missing HashAgg EXPLAIN ANALYZE details for parallel plans
Date
Msg-id 20200619022001.GY17995@telsasoft.com
Whole thread Raw
In response to Re: Missing HashAgg EXPLAIN ANALYZE details for parallel plans  (David Rowley <dgrowleyml@gmail.com>)
Responses Re: Missing HashAgg EXPLAIN ANALYZE details for parallel plans
List pgsql-hackers
On Fri, Jun 19, 2020 at 02:02:29PM +1200, David Rowley wrote:
> On Fri, 19 Jun 2020 at 01:45, Justin Pryzby <pryzby@telsasoft.com> wrote:
> > Note that "incremental sort" is also new, and splits things up more than sort.
> >
> > See in particular 6a918c3ac8a6b1d8b53cead6fcb7cbd84eee5750, which splits things
> > up even more.
> >
> >     ->  Incremental Sort (actual rows=70 loops=1)
> >           Sort Key: t.a, t.b
> >           Presorted Key: t.a
> > -         Full-sort Groups: 1 Sort Method: quicksort Memory: avg=NNkB peak=NNkB Presorted Groups: 5 Sort Methods:
top-Nheapsort, quicksort Memory: avg=NNkB peak=NNkB
 
> > +         Full-sort Groups: 1  Sort Method: quicksort  Average Memory: NNkB  Peak Memory: NNkB
> > +         Pre-sorted Groups: 5  Sort Methods: top-N heapsort, quicksort  Average Memory: NNkB  Peak Memory: NNkB
> >
> > That's not really a "precedent" and I don't think that necessarily invalidates
> > your change.
> 
> I imagine you moved "Per-sorted Groups" to a new line due to the lines
> becoming too long? Or was there something else special about that
> property to warrant putting it on a new line?

https://www.postgresql.org/message-id/20200419023625.GP26953@telsasoft.com
|I still think Pre-sorted groups should be on a separate line, as in 0002.
|In addition to looking better (to me), and being easier to read, another reason
|is that there are essentially key=>values here, but the keys are repeated (Sort
|Method, etc).

> postgres=# explain analyze select a,sum(b) from ab group by a;
>  HashAggregate  (cost=175425.12..194985.79 rows=988 width=12) (actual time=1551.920..5281.670 rows=1000 loops=1)
>    Group Key: a
>    Peak Memory Usage: 97 kB Disk Usage: 139760 kB HashAgg Batches: 832

Please be sure to use two spaces between each field !

See earlier discussions (and commits referenced by the Opened Items page).
https://www.postgresql.org/message-id/20200402054120.GC14618@telsasoft.com
https://www.postgresql.org/message-id/20200407042521.GH2228%40telsasoft.com

+                       appendStringInfoChar(es->str, ' ');
+
+               appendStringInfo(es->str, "Peak Memory Usage: " INT64_FORMAT " kB", memPeakKb);
+
+               if (aggstate->hash_batches_used > 0)
+                       appendStringInfo(es->str, " Disk Usage: " UINT64_FORMAT " kB HashAgg Batches: %d",

-- 
Justin



pgsql-hackers by date:

Previous
From: David Rowley
Date:
Subject: Re: Parallel Seq Scan vs kernel read ahead
Next
From: Amit Kapila
Date:
Subject: Re: Cleanup - Removal of unused function parameter from CopyReadBinaryAttribute