You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@drill.apache.org by ja...@apache.org on 2014/04/20 03:18:39 UTC
[31/51] [abbrv] git commit: in merge receiver,
handle case where no records are returned
in merge receiver, handle case where no records are returned
Project: http://git-wip-us.apache.org/repos/asf/incubator-drill/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-drill/commit/bfbc83f9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-drill/tree/bfbc83f9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-drill/diff/bfbc83f9
Branch: refs/heads/master
Commit: bfbc83f907d38d2bcee6e0e1c2b22242326d22a4
Parents: ca58de1
Author: Steven Phillips <sp...@maprtech.com>
Authored: Wed Apr 2 15:35:50 2014 -0700
Committer: Jacques Nadeau <ja...@apache.org>
Committed: Sat Apr 19 18:07:11 2014 -0700
----------------------------------------------------------------------
.../physical/impl/mergereceiver/MergingRecordBatch.java | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/bfbc83f9/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/mergereceiver/MergingRecordBatch.java
----------------------------------------------------------------------
diff --git a/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/mergereceiver/MergingRecordBatch.java b/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/mergereceiver/MergingRecordBatch.java
index ee2244e..c5c77a6 100644
--- a/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/mergereceiver/MergingRecordBatch.java
+++ b/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/mergereceiver/MergingRecordBatch.java
@@ -146,6 +146,9 @@ public class MergingRecordBatch implements RecordBatch {
// allocate the incoming record batch loaders
senderCount = rawBatches.size();
+ if (senderCount == 0) {
+ return IterOutcome.NONE;
+ }
incomingBatches = new RawFragmentBatch[senderCount];
batchOffsets = new int[senderCount];
batchLoaders = new RecordBatchLoader[senderCount];
@@ -634,8 +637,10 @@ public class MergingRecordBatch implements RecordBatch {
@Override
public void cleanup() {
outgoingContainer.clear();
- for(RecordBatchLoader rbl : batchLoaders){
- rbl.clear();
+ if (batchLoaders != null) {
+ for(RecordBatchLoader rbl : batchLoaders){
+ rbl.clear();
+ }
}
}