You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@drill.apache.org by ar...@apache.org on 2017/07/21 17:23:40 UTC
[4/5] drill git commit: DRILL-5083: status.getOutcome() return
FAILURE if one of the batches has STOP status (to avoid infinite loop in
Merge Join).
DRILL-5083: status.getOutcome() return FAILURE if one of the batches has STOP status (to avoid infinite loop in Merge Join).
closes #881
Project: http://git-wip-us.apache.org/repos/asf/drill/repo
Commit: http://git-wip-us.apache.org/repos/asf/drill/commit/368bc38b
Tree: http://git-wip-us.apache.org/repos/asf/drill/tree/368bc38b
Diff: http://git-wip-us.apache.org/repos/asf/drill/diff/368bc38b
Branch: refs/heads/master
Commit: 368bc38b162e43c7c9e6ce302ede87bccf019052
Parents: 943a143
Author: Roman Kulyk <ro...@gmail.com>
Authored: Thu Jul 20 16:33:49 2017 +0300
Committer: Arina Ielchiieva <ar...@gmail.com>
Committed: Fri Jul 21 19:38:16 2017 +0300
----------------------------------------------------------------------
.../org/apache/drill/exec/physical/impl/join/JoinStatus.java | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/drill/blob/368bc38b/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/JoinStatus.java
----------------------------------------------------------------------
diff --git a/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/JoinStatus.java b/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/JoinStatus.java
index 8e48515..527c984 100644
--- a/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/JoinStatus.java
+++ b/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/join/JoinStatus.java
@@ -1,4 +1,4 @@
-/**
+/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
@@ -138,7 +138,8 @@ public final class JoinStatus {
* 4. JoinOutcome.SCHEMA_CHANGED : one of the side has change in schema.
*/
public JoinOutcome getOutcome() {
- if (!ok) {
+ // on STOP, OUT_OF_MEMORY return FAILURE.
+ if (!ok || eitherMatches(IterOutcome.STOP)) {
return JoinOutcome.FAILURE;
}
if (hasMoreData) {
@@ -162,7 +163,7 @@ public final class JoinStatus {
return JoinOutcome.WAITING;
}
ok = false;
- // on STOP, OUT_OF_MEMORY return FAILURE.
+
return JoinOutcome.FAILURE;
}