Re: Allow parallel DISTINCT

2021-08-22 Thread Tom Lane
David Rowley writes: > Thanks. I pushed a fix for that. Yeah, I saw your commit just after complaining. Sorry for the noise. regards, tom lane

Re: Allow parallel DISTINCT

2021-08-22 Thread David Rowley
On Mon, 23 Aug 2021 at 01:58, Tom Lane wrote: > > David Rowley writes: > > I've pushed this to master now. > > ... and the buildfarm is pushing back, eg Thanks. I pushed a fix for that. David

Re: Allow parallel DISTINCT

2021-08-22 Thread Tom Lane
David Rowley writes: > I've pushed this to master now. ... and the buildfarm is pushing back, eg https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=hoverfly=2021-08-22%2011%3A31%3A45 diff -U3 /scratch/nm/farm/xlc64v16/HEAD/pgsql.build/src/test/regress/expected/select_distinct.out

Re: Allow parallel DISTINCT

2021-08-22 Thread David Rowley
On Wed, 18 Aug 2021 at 08:50, Zhihong Yu wrote: > The patch is good from my point of view. Thanks for the review. I looked over the patch again and the only thing I adjusted was the order of the RESETs in the regression tests. I left the " if (distinct_rel->pathlist == NIL)" ERROR case check

Re: Allow parallel DISTINCT

2021-08-17 Thread Zhihong Yu
On Tue, Aug 17, 2021 at 1:47 PM David Rowley wrote: > On Wed, 18 Aug 2021 at 02:42, Zhihong Yu wrote: > > Since create_partial_distinct_paths() calls > create_final_distinct_paths(), I wonder if numDistinctRows can be passed to > create_final_distinct_paths() so that the latter doesn't need to

Re: Allow parallel DISTINCT

2021-08-17 Thread David Rowley
On Wed, 18 Aug 2021 at 02:42, Zhihong Yu wrote: > Since create_partial_distinct_paths() calls create_final_distinct_paths(), I > wonder if numDistinctRows can be passed to create_final_distinct_paths() so > that the latter doesn't need to call estimate_num_groups(). That can't be done. The two

Re: Allow parallel DISTINCT

2021-08-17 Thread Zhihong Yu
On Tue, Aug 17, 2021 at 3:59 AM David Rowley wrote: > On Tue, 17 Aug 2021 at 20:07, Zhihong Yu wrote: > > Can you attach updated patch so that we know more detail about the two > new functions; create_final_distinct_paths and > > create_partial_distinct_paths ? > > Must've fallen off in transit

Re: Allow parallel DISTINCT

2021-08-17 Thread David Rowley
On Tue, 17 Aug 2021 at 20:07, Zhihong Yu wrote: > Can you attach updated patch so that we know more detail about the two new > functions; create_final_distinct_paths and > create_partial_distinct_paths ? Must've fallen off in transit :) David parallel_distinct_v2.patch Description: Binary

Re: Allow parallel DISTINCT

2021-08-17 Thread Zhihong Yu
On Mon, Aug 16, 2021 at 10:07 PM David Rowley wrote: > On Wed, 11 Aug 2021 at 16:51, David Rowley wrote: > > The patch is just some plumbing work to connect all the correct paths > > up to make it work. It's all fairly trivial. > > I looked at this patch again and realise that it could be done

Re: Allow parallel DISTINCT

2021-08-16 Thread David Rowley
On Wed, 11 Aug 2021 at 16:51, David Rowley wrote: > The patch is just some plumbing work to connect all the correct paths > up to make it work. It's all fairly trivial. I looked at this patch again and realise that it could be done a bit better. For example, the previous version set the

Allow parallel DISTINCT

2021-08-10 Thread David Rowley
Back in March 2016, e06a38965 added support for parallel aggregation. IIRC, because it was fairly late in the release cycle, I dropped parallel DISTINCT to reduce the scope a little. It's been on my list of things to fix since then. I just didn't get around to it until today. The patch is just