YARN-301. Fair scheduler throws ConcurrentModificationException when iterating over app's priorities. Contributed by Sandy Ryza.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1428400 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Thomas White 2013-01-03 15:26:55 +00:00
parent 0768f96a83
commit 8cd026d365
2 changed files with 30 additions and 25 deletions

View File

@ -164,6 +164,9 @@ Release 2.0.3-alpha - Unreleased
YARN-300. After YARN-271, fair scheduler can infinite loop and not
schedule any application. (Sandy Ryza via tomwhite)
YARN-301. Fair scheduler throws ConcurrentModificationException when
iterating over app's priorities. (Sandy Ryza via tomwhite)
Release 2.0.2-alpha - 2012-09-07
INCOMPATIBLE CHANGES

View File

@ -305,6 +305,7 @@ public Resource assignContainer(FSSchedulerNode node, boolean reserved) {
// For each priority, see if we can schedule a node local, rack local
// or off-switch request. Rack of off-switch requests may be delayed
// (not scheduled) in order to promote better locality.
synchronized (app) {
for (Priority priority : prioritiesToTry) {
app.addSchedulingOpportunity(priority);
NodeType allowedLocality = app.getAllowedLocalityLevel(priority,
@ -335,6 +336,7 @@ public Resource assignContainer(FSSchedulerNode node, boolean reserved) {
NodeType.OFF_SWITCH, reserved);
}
}
}
return Resources.none();
}
}