Dan Hecht has posted comments on this change. Change subject: IMPALA-3586: Implement union passthrough ......................................................................
Patch Set 20: (2 comments) http://gerrit.cloudera.org:8080/#/c/5816/19/be/src/exec/union-node.cc File be/src/exec/union-node.cc: Line 263: (!HasMorePassthrough() && !HasMoreMaterialized() && !HasMoreConst(state)); > Unfortunately that wouldn't work. We could make it work but would require changing how row-batches work a little. I agree it's not worth it, so let's leave this alone. http://gerrit.cloudera.org:8080/#/c/5816/19/be/src/exec/union-node.h File be/src/exec/union-node.h: Line 129: return first_materialized_child_idx_ <= child_idx_ && child_idx_ < children_.size(); > Reordered it as you suggested. (By the way, in Python you can actually writ The condition you have here doesn't tell "if there are still rows to be returned from children than need materialization". Your condition tells you whether we are currently processing children that need passthrough. The condition that makes sense for this function is the one I wrote earlier, read the comment to see why: // We have children that need materialization and haven't processed them all yet. first_materizlied_child_idx_ != children_.size() && child_idx_ < children_.size() -- To view, visit http://gerrit.cloudera.org:8080/5816 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: Ia8f6d5062724ba5b78174c3227a7a796d10d8416 Gerrit-PatchSet: 20 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Taras Bobrovytsky <[email protected]> Gerrit-Reviewer: Alex Behm <[email protected]> Gerrit-Reviewer: Dan Hecht <[email protected]> Gerrit-Reviewer: Marcel Kornacker <[email protected]> Gerrit-Reviewer: Taras Bobrovytsky <[email protected]> Gerrit-Reviewer: Tim Armstrong <[email protected]> Gerrit-HasComments: Yes
