Re: pg13dev: explain partial, parallel hashagg, and memory use
David Rowley <dgrowleyml@gmail.com>
From: David Rowley <dgrowleyml@gmail.com>
To: Justin Pryzby <pryzby@telsasoft.com>
Cc: PostgreSQL-development <pgsql-hackers@postgresql.org>,
Jeff Davis <jdavis@postgresql.org>
Date: 2020-08-05T05:25:25Z
Lists: pgsql-hackers
Attachments
- dont_display_hashagg_properties_for_workers_that_dont_assist.patch (application/octet-stream) patch
On Wed, 5 Aug 2020 at 14:27, David Rowley <dgrowleyml@gmail.com> wrote: > > On Wed, 5 Aug 2020 at 14:13, Justin Pryzby <pryzby@telsasoft.com> wrote: > > Also odd (to me). If I encourage more workers, there are "slots" for each > > "planned" worker, even though fewer were launched: > > Looking at explain.c for "num_workers; " (including the final space at > the end), looking at each for loop that loops over each worker, quite > a number of those locations have a condition that skips the worker. > > For example, show_sort_info() does > > if (sinstrument->sortMethod == SORT_TYPE_STILL_IN_PROGRESS) > continue; /* ignore any unfilled slots */ > > So maybe Hash Agg should be doing something similar. Additionally, > maybe it should not show the leader details if the leader didn't help. Here's what I had in mind. The unpatched format got even more broken with EXPLAIN (ANALYZE, VERBOSE), so this is certainly a bug fix. David
Commits
-
Fix bogus EXPLAIN output for Hash Aggregate
- d5e96520ffca 14.0 landed
- 05dfb813245b 13.0 landed