Tim Armstrong has uploaded a new patch set (#4). ( http://gerrit.cloudera.org:8080/14716 )
Change subject: IMPALA-9126: part 2: no hj probe structures in build ...................................................................... IMPALA-9126: part 2: no hj probe structures in build This is actually independent of part 1, and can be merged ahead of it if needed. This cleans a up a bit of tech debt, where the hash join builder allocated probe-side streams. This was implemented before we had reliable memory reservations. Now we can simply transfer reservation. The reason things are this way is because the separation of PhjBuilder from PartitionedHashJoinNode (IMPALA-3567) happened before we switched to the new BufferPool (IMPALA-4674). It wasn't possible to reliably transfer reservations, instead the workaround of allocating and transferring probe streams was necessary. After this change, PartitionedHashJoinBuilder does not explicitly touch any probe-side data structures. There is still some implicit sharing of things like the buffer pool client, which is expected as long as the builder belongs to the ExecNode. Testing: Ran exhaustive tests. We should already have adequate coverage for spilling and non-spilling hash joins. Change-Id: I0065f7f44f44f02b7616b1f694178ca42341c42d --- M be/src/exec/partitioned-hash-join-builder.cc M be/src/exec/partitioned-hash-join-builder.h M be/src/exec/partitioned-hash-join-node.cc M be/src/exec/partitioned-hash-join-node.h M be/src/runtime/bufferpool/buffer-pool.cc M be/src/runtime/bufferpool/buffer-pool.h 6 files changed, 175 insertions(+), 131 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/16/14716/4 -- To view, visit http://gerrit.cloudera.org:8080/14716 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I0065f7f44f44f02b7616b1f694178ca42341c42d Gerrit-Change-Number: 14716 Gerrit-PatchSet: 4 Gerrit-Owner: Tim Armstrong <[email protected]>
