Re: pgsql: Add parallel-aware hash joins.
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Andres Freund <andres@anarazel.de>
Cc: Robert Haas <robertmhaas@gmail.com>,
Thomas Munro <thomas.munro@enterprisedb.com>,
"pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2018-01-04T20:16:15Z
Lists: pgsql-hackers
Andres Freund <andres@anarazel.de> writes: > On 2018-01-04 11:20:33 -0800, Andres Freund wrote: >> Some packages on skink have been upgraded. It appears that there either >> was a libc or valgrind change that made valgrind not recognize that a >> pointer of 0 might not point anywhere :( > ==5718== Invalid write of size 8 > ==5718== at 0x40E3DD: ExecInterpExpr (execExprInterp.c:1117) > ==5718== by 0x40F5E9: ExecInterpExprStillValid (execExprInterp.c:1788) > ==5718== by 0xE6B0409: ExecEvalExpr (executor.h:282) Are those line numbers supposed to match current HEAD? 1117 does not contain any write AFAICS: if (!op->d.iocoerce.finfo_in->fn_strict || str != NULL) > ==5718== Process terminating with default action of signal 11 (SIGSEGV) > ==5718== Access not within mapped region at address 0x20 > ==5718== at 0x40E3DD: ExecInterpExpr (execExprInterp.c:1117) > ==5718== by 0x40F5E9: ExecInterpExprStillValid (execExprInterp.c:1788) This would be consistent with op->d.iocoerce.finfo_in being NULL, I think, but there is no way that execExpr.c could have created an EEOP_IOCOERCE step without filling in the finfo_in pointer. I think the correct conclusion is that this version of valgrind is buggy as hell. I wouldn't clutter our code with suppressions trying to make it sort-of work. regards, tom lane
Commits
-
Update obsolete sentence in README.parallel.
- 28e04155f17c 11.0 cited
-
Rewrite ConditionVariableBroadcast() to avoid live-lock.
- aced5a92bf46 11.0 cited
-
Tweak parallel hash join test case in hopes of improving stability.
- 934c7986f4a0 11.0 landed
-
Rename pg_rewind's copy_file_range() to avoid conflict with new linux syscall.
- 3e68686e2c55 11.0 cited
-
Fix some minor errors in new PHJ code.
- 6fcde2406304 11.0 landed
-
Fix EXPLAIN ANALYZE output for Parallel Hash.
- 93ea78b17c47 11.0 landed
-
Fix rare assertion failure in parallel hash join.
- f83040c62a78 11.0 landed
-
Cancel CV sleep during subtransaction abort.
- f3decdc94ea3 10.2 landed
- 59d1e2b95a82 11.0 landed
-
Add parallel-aware hash joins.
- 1804284042e6 11.0 cited
-
Fix EXPLAIN ANALYZE of hash join when the leader doesn't participate.
- 5bcf389ecfd4 11.0 cited
-
Add some regression tests that exercise hash join code.
- fa330f9adf4e 11.0 cited