Repository: hadoop
Updated Branches:
refs/heads/branch-2.8 00e51a9cd -> 87c36d8b8
YARN-6917. Queue path is recomputed from scratch on every allocation.
Contributed by Eric Payne
(cherry picked from commit 5558792894169425bff054364a1ab4c48b347fb9)
Conflicts:
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/87c36d8b
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/87c36d8b
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/87c36d8b
Branch: refs/heads/branch-2.8
Commit: 87c36d8b8b1b2da29f9a253c03b3094010c5656d
Parents: 00e51a9
Author: Jason Lowe <[email protected]>
Authored: Mon Aug 14 15:31:34 2017 -0500
Committer: Jason Lowe <[email protected]>
Committed: Mon Aug 14 15:41:54 2017 -0500
----------------------------------------------------------------------
.../resourcemanager/scheduler/capacity/AbstractCSQueue.java | 8 ++++++++
.../server/resourcemanager/scheduler/capacity/LeafQueue.java | 5 -----
.../resourcemanager/scheduler/capacity/ParentQueue.java | 6 ------
3 files changed, 8 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hadoop/blob/87c36d8b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/AbstractCSQueue.java
----------------------------------------------------------------------
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/AbstractCSQueue.java
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/AbstractCSQueue.java
index 0ca5b58..3f3cbd2 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/AbstractCSQueue.java
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/AbstractCSQueue.java
@@ -60,6 +60,7 @@ public abstract class AbstractCSQueue implements CSQueue {
private static final Log LOG = LogFactory.getLog(AbstractCSQueue.class);
CSQueue parent;
final String queueName;
+ private final String queuePath;
volatile int numContainers;
final Resource minimumAllocation;
@@ -96,6 +97,8 @@ public abstract class AbstractCSQueue implements CSQueue {
this.labelManager = cs.getRMContext().getNodeLabelManager();
this.parent = parent;
this.queueName = queueName;
+ this.queuePath =
+ ((parent == null) ? "" : (parent.getQueuePath() + ".")) + this.queueName;
this.resourceCalculator = cs.getResourceCalculator();
// must be called after parent and queueName is set
@@ -122,6 +125,11 @@ public abstract class AbstractCSQueue implements CSQueue {
queueCapacities,
parent == null ? null : parent.getQueueCapacities());
}
+
+ @Override
+ public String getQueuePath() {
+ return queuePath;
+ }
@Override
public synchronized float getCapacity() {
http://git-wip-us.apache.org/repos/asf/hadoop/blob/87c36d8b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java
----------------------------------------------------------------------
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java
index 497e0ec..40b7e0e 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/LeafQueue.java
@@ -310,11 +310,6 @@ public class LeafQueue extends AbstractCSQueue {
allUsersTimesWeights = sumAllUsersTimesWeights();
}
- @Override
- public String getQueuePath() {
- return getParent().getQueuePath() + "." + getQueueName();
- }
-
/**
* Used only by tests.
*/
http://git-wip-us.apache.org/repos/asf/hadoop/blob/87c36d8b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java
----------------------------------------------------------------------
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java
index 680f01e..dfb372f 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/ParentQueue.java
@@ -180,12 +180,6 @@ public class ParentQueue extends AbstractCSQueue {
}
@Override
- public String getQueuePath() {
- String parentPath = ((parent == null) ? "" : (parent.getQueuePath() +
"."));
- return parentPath + getQueueName();
- }
-
- @Override
public synchronized QueueInfo getQueueInfo(
boolean includeChildQueues, boolean recursive) {
QueueInfo queueInfo = getQueueInfo();
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]