You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tajo.apache.org by jh...@apache.org on 2014/03/19 02:15:34 UTC
git commit: TAJO-690: infinite loop occurs when rack task is
assigning. (jinho)
Repository: incubator-tajo
Updated Branches:
refs/heads/master f7caeb61f -> b178b70db
TAJO-690: infinite loop occurs when rack task is assigning. (jinho)
Project: http://git-wip-us.apache.org/repos/asf/incubator-tajo/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tajo/commit/b178b70d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tajo/tree/b178b70d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tajo/diff/b178b70d
Branch: refs/heads/master
Commit: b178b70db311c94539a8a43ef4d96d9377475169
Parents: f7caeb6
Author: jinossy <ji...@gmail.com>
Authored: Wed Mar 19 10:14:48 2014 +0900
Committer: jinossy <ji...@gmail.com>
Committed: Wed Mar 19 10:14:48 2014 +0900
----------------------------------------------------------------------
CHANGES.txt | 2 ++
.../main/java/org/apache/tajo/master/DefaultTaskScheduler.java | 5 +++--
2 files changed, 5 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tajo/blob/b178b70d/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index bc8f299..d51dfcb 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -276,6 +276,8 @@ Release 0.8.0 - unreleased
BUG FIXES
+ TAJO-690: infinite loop occurs when rack task is assigning. (jinho)
+
TAJO-689: NoSuchElementException occurs during assigning the leaf tasks. (jinho)
TAJO-651: HcatalogStore should support (de)serialization of RCFile. (jinho)
http://git-wip-us.apache.org/repos/asf/incubator-tajo/blob/b178b70d/tajo-core/tajo-core-backend/src/main/java/org/apache/tajo/master/DefaultTaskScheduler.java
----------------------------------------------------------------------
diff --git a/tajo-core/tajo-core-backend/src/main/java/org/apache/tajo/master/DefaultTaskScheduler.java b/tajo-core/tajo-core-backend/src/main/java/org/apache/tajo/master/DefaultTaskScheduler.java
index 91f9cea..28015d5 100644
--- a/tajo-core/tajo-core-backend/src/main/java/org/apache/tajo/master/DefaultTaskScheduler.java
+++ b/tajo-core/tajo-core-backend/src/main/java/org/apache/tajo/master/DefaultTaskScheduler.java
@@ -639,7 +639,6 @@ public class DefaultTaskScheduler extends AbstractTaskScheduler {
//find remaining local task
if (leafTasks.contains(attemptId)) {
leafTasks.remove(attemptId);
- leafTasksRackMapping.get(hostVolumeMapping.getRack()).remove(attemptId);
//LOG.info(attemptId + " Assigned based on host match " + hostName);
hostLocalAssigned++;
totalAssigned++;
@@ -669,9 +668,11 @@ public class DefaultTaskScheduler extends AbstractTaskScheduler {
for (HostVolumeMapping tasks : remainingTasks) {
while (tasks.getRemainingLocalTaskSize() > 0){
QueryUnitAttemptId tId = tasks.getQueryUnitAttemptIdByRack(rack);
+
+ if (tId == null) break;
+
if (leafTasks.contains(tId)) {
leafTasks.remove(tId);
- leafTasksRackMapping.get(rack).remove(tId);
attemptId = tId;
break;
}