You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tajo.apache.org by ji...@apache.org on 2016/04/22 14:13:22 UTC
tajo git commit: TAJO-2126: Allow parallel execution of non-leaf
sibling ExecutionBlocks.
Repository: tajo
Updated Branches:
refs/heads/master 552376a80 -> 71193b218
TAJO-2126: Allow parallel execution of non-leaf sibling ExecutionBlocks.
Closes #1003
Project: http://git-wip-us.apache.org/repos/asf/tajo/repo
Commit: http://git-wip-us.apache.org/repos/asf/tajo/commit/71193b21
Tree: http://git-wip-us.apache.org/repos/asf/tajo/tree/71193b21
Diff: http://git-wip-us.apache.org/repos/asf/tajo/diff/71193b21
Branch: refs/heads/master
Commit: 71193b218f55d33fad0f255386165b8c88bb310e
Parents: 552376a
Author: Jihoon Son <ji...@apache.org>
Authored: Fri Apr 22 21:12:58 2016 +0900
Committer: Jihoon Son <ji...@apache.org>
Committed: Fri Apr 22 21:12:58 2016 +0900
----------------------------------------------------------------------
CHANGES | 3 +++
.../engine/planner/global/ParallelExecutionQueue.java | 13 ++-----------
2 files changed, 5 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tajo/blob/71193b21/CHANGES
----------------------------------------------------------------------
diff --git a/CHANGES b/CHANGES
index 7ac7d83..38aedda 100644
--- a/CHANGES
+++ b/CHANGES
@@ -10,6 +10,9 @@ Release 0.12.0 - unreleased
IMPROVEMENT
+ TAJO-2126: Allow parallel execution of non-leaf sibling ExecutionBlocks.
+ (jihooon)
+
TAJO-2127: Use Type instead of DataType for EvalNode. (hyunsik)
TAJO-2125: Detect JAVA_HOME on OSX, if JAVA_HOME is not set. (jinho)
http://git-wip-us.apache.org/repos/asf/tajo/blob/71193b21/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/ParallelExecutionQueue.java
----------------------------------------------------------------------
diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/ParallelExecutionQueue.java b/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/ParallelExecutionQueue.java
index 23e309f..d197bda 100644
--- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/ParallelExecutionQueue.java
+++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/global/ParallelExecutionQueue.java
@@ -101,17 +101,8 @@ public class ParallelExecutionQueue implements ExecutionQueue, Iterable<Executio
}
private boolean isExecutableNow(ExecutionBlock current) {
- ExecutionBlock parent = masterPlan.getParent(current);
-
- List<ExecutionBlock> dependents = masterPlan.getChilds(current);
- if (parent != null && masterPlan.getChannel(current.getId(), parent.getId()).needShuffle()) {
- // add all children of sibling for partitioning
- dependents = new ArrayList<>();
- for (ExecutionBlock sibling : masterPlan.getChilds(parent)) {
- dependents.addAll(masterPlan.getChilds(sibling));
- }
- }
- for (ExecutionBlock child : dependents) {
+
+ for (ExecutionBlock child : masterPlan.getChilds(current)) {
if (!executed.contains(child.getId())) {
return false; // there's something should be done before this
}