Dan Hecht has posted comments on this change. Change subject: IMPALA-3567 Part 2, IMPALA-3899: factor out PHJ builder ......................................................................
Patch Set 17: (10 comments) These are the comments from re-reviewing the addressed comments. Will finish off the rest of builder.h and then the .cc files next. http://gerrit.cloudera.org:8080/#/c/3873/14/be/src/exec/partitioned-hash-join-builder.h File be/src/exec/partitioned-hash-join-builder.h: PS14, Line 90: > It passes from the class to the caller. I guess I don't find this ambiguous I guess one term used elsewhere is "release", right? (e.g. C++ unique_ptr). I think it's better than "acquire" given the direction of resource transfer, so that's one option. The reworded comment helps too. PS14, Line 95: streams are empty but prepared for : /// writing with a write buffer allocated. : std::vector<std::unique_ptr<BufferedTupleStream>> AcquireProbeStreams(); > The hash join node uses this to determine whether it's already cleaned up t Okay for now as an intermediate step, but let's definitely clean it up as work continues. PS14, Line 195: is destroyed i > Overall these bool arguments are really confusing, and the correctness of t Yeah, agree this bool was very confusing. Will take a look at the new stuff. PS14, Line 234: > Yes, since we share the reservation and hand off the probe buffers. Thanks, the new comment clarifies. From reading it I couldn't tell if there was a "* 2" missing because of the comment. http://gerrit.cloudera.org:8080/#/c/3873/15/be/src/exec/partitioned-hash-join-node.cc File be/src/exec/partitioned-hash-join-node.cc: Line 372: { RETURN_IF_ERROR(build_partition->BuildHashTable(&built)); } extraneous braces Line 395: } same http://gerrit.cloudera.org:8080/#/c/3873/15/be/src/exec/partitioned-hash-join-node.h File be/src/exec/partitioned-hash-join-node.h: PS15, Line 81: build probe Line 103: /// Thanks, I think this will make the code much more approachable. PS15, Line 405: nit: extra space http://gerrit.cloudera.org:8080/#/c/3873/15/be/src/util/runtime-profile.cc File be/src/util/runtime-profile.cc: Line 391: } alternatively: initialize insert_pos to begin and then DCHECK_NE(insert_pos, children_.begin()); Okay to ignore. -- To view, visit http://gerrit.cloudera.org:8080/3873 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I1e02ea9c7a7d1a0f373b11aa06c3237e1c7bd4cb Gerrit-PatchSet: 17 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Tim Armstrong <tarmstr...@cloudera.com> Gerrit-Reviewer: Alex Behm <alex.b...@cloudera.com> Gerrit-Reviewer: Dan Hecht <dhe...@cloudera.com> Gerrit-Reviewer: Michael Ho Gerrit-Reviewer: Michael Ho <k...@cloudera.com> Gerrit-Reviewer: Tim Armstrong <tarmstr...@cloudera.com> Gerrit-HasComments: Yes