Re: Proposal : Parallel Merge Join

Dilip Kumar <dilipbalaut@gmail.com>

From: Dilip Kumar <dilipbalaut@gmail.com>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Amit Kapila <amit.kapila16@gmail.com>, pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2017-03-07T16:38:51Z
Lists: pgsql-hackers

Attachments

On Tue, Mar 7, 2017 at 7:47 PM, Robert Haas <robertmhaas@gmail.com> wrote:
> You're right to be confused, because that seems to be a bug in the
> existing code.  There seems to be no guarantee that the cheapest
> parallel-safe path will be in the cheapest_parameterized_paths list.
> I'll go fix that.

Okay, Done the simmilar changes in sort_inner_and_outer as well.
>
> As a matter of style, when testing a value of type "bool", write if
> (x) or if (!x).  When testing a variable of some other type, say int,
> write if (x == 0) or if (x != 0) or whatever.

Done

Apart from this, there was one problem in match_unsorted_outer (in
v10), Basically, if inner_cheapest_total was not parallel_safe then I
was always getting parallel safe inner. But, we should not do anything
if jointype was JOIN_UNIQUE_INNER, so fixed that also.

-- 
Regards,
Dilip Kumar
EnterpriseDB: http://www.enterprisedb.com

Commits

  1. Consider parallel merge joins.

  2. Preparatory refactoring for parallel merge join support.

  3. Fix parallel hash join path search.