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;

Reply via email to