Re: pgsql: Add parallel-aware hash joins.

Thomas Munro <thomas.munro@enterprisedb.com>

From: Thomas Munro <thomas.munro@enterprisedb.com>
To: Andres Freund <andres@anarazel.de>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, pgsql-committers <pgsql-committers@postgresql.org>
Date: 2018-01-02T03:23:45Z
Lists: pgsql-hackers
On Tue, Jan 2, 2018 at 11:42 AM, Andres Freund <andres@anarazel.de> wrote:
> Pushed your updated version.

Thanks.  That should leave just the test failures like this on certain machines:

*** 6103,6109 ****
  $$);
   initially_multibatch | increased_batches
  ----------------------+-------------------
!  t                    | f
  (1 row)

  rollback to settings;
--- 6103,6109 ----
  $$);
   initially_multibatch | increased_batches
  ----------------------+-------------------
!  t                    | t
  (1 row)

I'll post a patch that should fix that along with a reply to Tom's
most recent email tomorrow, when I'm back from my break.

-- 
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.