Re: pgsql: Add parallel-aware hash joins.

Thomas Munro <thomas.munro@enterprisedb.com>

From: Thomas Munro <thomas.munro@enterprisedb.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Andres Freund <andres@anarazel.de>, pgsql-committers <pgsql-committers@postgresql.org>
Date: 2018-01-04T01:26:28Z
Lists: pgsql-hackers

Attachments

On Thu, Jan 4, 2018 at 2:17 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> So this patch has been in place for two weeks, the buildfarm has still
> got the measles, and we're entering the January commitfest with a lot
> of other work to get done.  I realize that the two weeks were mostly
> holiday time, but it's time to have some urgency about clearing the
> buildfarm failures.
>
> As best I understand, the remaining failures simply arise from
> an unstable regression test case and aren't teaching us anything
> of value.  I propose that for the moment, we simply remove the
> failing query from join.sql.  We can put it back when there's
> reason to think it will pass everywhere.

I spent a lot of time trying and failing to get the world's slowest 32
bit powerpc emulation to reproduce this.  Bleugh.  Before we rip that
test out, would you mind checking if this passes repeatedly on gaur or
pademelon?

-- 
Thomas Munro
http://www.enterprisedb.com

Commits

  1. Update obsolete sentence in README.parallel.

  2. Rewrite ConditionVariableBroadcast() to avoid live-lock.

  3. Tweak parallel hash join test case in hopes of improving stability.

  4. Rename pg_rewind's copy_file_range() to avoid conflict with new linux syscall.

  5. Fix some minor errors in new PHJ code.

  6. Fix EXPLAIN ANALYZE output for Parallel Hash.

  7. Fix rare assertion failure in parallel hash join.

  8. Cancel CV sleep during subtransaction abort.

  9. Add parallel-aware hash joins.

  10. Fix EXPLAIN ANALYZE of hash join when the leader doesn't participate.

  11. Add some regression tests that exercise hash join code.