YARN-1724. Race condition in Fair Scheduler when continuous scheduling is turned on (Sandy Ryza)
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1569451 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
90cbdfaf9d
commit
ebb9cb3ee5
|
@ -277,6 +277,9 @@ Release 2.4.0 - UNRELEASED
|
|||
YARN-1721. When moving app between queues in Fair Scheduler, grab lock on
|
||||
FSSchedulerApp (Sandy Ryza)
|
||||
|
||||
YARN-1724. Race condition in Fair Scheduler when continuous scheduling is
|
||||
turned on (Sandy Ryza)
|
||||
|
||||
Release 2.3.1 - UNRELEASED
|
||||
|
||||
INCOMPATIBLE CHANGES
|
||||
|
|
|
@ -989,7 +989,13 @@ public class FairScheduler extends AbstractYarnScheduler {
|
|||
private void continuousScheduling() {
|
||||
while (true) {
|
||||
List<NodeId> nodeIdList = new ArrayList<NodeId>(nodes.keySet());
|
||||
// Sort the nodes by space available on them, so that we offer
|
||||
// containers on emptier nodes first, facilitating an even spread. This
|
||||
// requires holding the scheduler lock, so that the space available on a
|
||||
// node doesn't change during the sort.
|
||||
synchronized (this) {
|
||||
Collections.sort(nodeIdList, nodeAvailableResourceComparator);
|
||||
}
|
||||
|
||||
// iterate all nodes
|
||||
for (NodeId nodeId : nodeIdList) {
|
||||
|
|
Loading…
Reference in New Issue