DRILL-913: Fix IOOB in HashJoinProbe when input is empty batch
Project: http://git-wip-us.apache.org/repos/asf/incubator-drill/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-drill/commit/e830f7fa Tree: http://git-wip-us.apache.org/repos/asf/incubator-drill/tree/e830f7fa Diff: http://git-wip-us.apache.org/repos/asf/incubator-drill/diff/e830f7fa Branch: refs/heads/master Commit: e830f7faa1c36fd0915146fea771009c3d4f90b3 Parents: aad2c4f Author: Mehant Baid <[email protected]> Authored: Thu Jun 5 12:10:11 2014 -0700 Committer: Jacques Nadeau <[email protected]> Committed: Thu Jun 5 20:08:26 2014 -0700 ---------------------------------------------------------------------- .../drill/exec/physical/impl/join/HashJoinProbeTemplate.java | 4 ++++ 1 file changed, 4 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/e830f7fa/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/HashJoinProbeTemplate.java ---------------------------------------------------------------------- diff --git a/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/HashJoinProbeTemplate.java b/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/HashJoinProbeTemplate.java index 6e19934..2dec9ff 100644 --- a/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/HashJoinProbeTemplate.java +++ b/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/HashJoinProbeTemplate.java @@ -126,6 +126,10 @@ public abstract class HashJoinProbeTemplate implements HashJoinProbe { case OK: recordsToProcess = probeBatch.getRecordCount(); recordsProcessed = 0; + // If we received an empty batch do nothing + if (recordsToProcess == 0) { + continue; + } } } int probeIndex = -1;
