|
@@ -22,13 +22,13 @@ import java.util.ArrayList;
|
|
|
import javax.xml.bind.annotation.XmlAccessType;
|
|
|
import javax.xml.bind.annotation.XmlAccessorType;
|
|
|
import javax.xml.bind.annotation.XmlRootElement;
|
|
|
-import javax.xml.bind.annotation.XmlTransient;
|
|
|
|
|
|
import org.apache.hadoop.yarn.server.resourcemanager.nodelabels.RMNodeLabelsManager;
|
|
|
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.QueueResourceQuotas;
|
|
|
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.ResourceUsage;
|
|
|
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity
|
|
|
.AutoCreatedLeafQueue;
|
|
|
+import org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler;
|
|
|
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.LeafQueue;
|
|
|
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.QueueCapacities;
|
|
|
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.UserInfo;
|
|
@@ -45,6 +45,7 @@ public class CapacitySchedulerLeafQueueInfo extends CapacitySchedulerQueueInfo {
|
|
|
protected int userLimit;
|
|
|
protected UsersInfo users; // To add another level in the XML
|
|
|
protected float userLimitFactor;
|
|
|
+ protected float configuredMaxAMResourceLimit;
|
|
|
protected ResourceInfo AMResourceLimit;
|
|
|
protected ResourceInfo usedAMResource;
|
|
|
protected ResourceInfo userAMResourceLimit;
|
|
@@ -53,15 +54,14 @@ public class CapacitySchedulerLeafQueueInfo extends CapacitySchedulerQueueInfo {
|
|
|
protected String defaultNodeLabelExpression;
|
|
|
protected int defaultPriority;
|
|
|
protected boolean isAutoCreatedLeafQueue;
|
|
|
-
|
|
|
- @XmlTransient
|
|
|
- protected String orderingPolicyInfo;
|
|
|
+ protected long maxApplicationLifetime;
|
|
|
+ protected long defaultApplicationLifetime;
|
|
|
|
|
|
CapacitySchedulerLeafQueueInfo() {
|
|
|
};
|
|
|
|
|
|
- CapacitySchedulerLeafQueueInfo(LeafQueue q) {
|
|
|
- super(q);
|
|
|
+ CapacitySchedulerLeafQueueInfo(CapacityScheduler cs, LeafQueue q) {
|
|
|
+ super(cs, q);
|
|
|
numActiveApplications = q.getNumActiveApplications();
|
|
|
numPendingApplications = q.getNumPendingApplications();
|
|
|
numContainers = q.getNumContainers();
|
|
@@ -70,6 +70,7 @@ public class CapacitySchedulerLeafQueueInfo extends CapacitySchedulerQueueInfo {
|
|
|
userLimit = q.getUserLimit();
|
|
|
users = new UsersInfo(q.getUsersManager().getUsersInfo());
|
|
|
userLimitFactor = q.getUserLimitFactor();
|
|
|
+ configuredMaxAMResourceLimit = q.getMaxAMResourcePerQueuePercent();
|
|
|
AMResourceLimit = new ResourceInfo(q.getAMResourceLimit());
|
|
|
usedAMResource = new ResourceInfo(q.getQueueResourceUsage().getAMUsed());
|
|
|
preemptionDisabled = q.getPreemptionDisabled();
|
|
@@ -91,6 +92,8 @@ public class CapacitySchedulerLeafQueueInfo extends CapacitySchedulerQueueInfo {
|
|
|
if ( q instanceof AutoCreatedLeafQueue) {
|
|
|
isAutoCreatedLeafQueue = true;
|
|
|
}
|
|
|
+ defaultApplicationLifetime = q.getDefaultApplicationLifetime();
|
|
|
+ maxApplicationLifetime = q.getMaximumApplicationLifetime();
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -136,6 +139,10 @@ public class CapacitySchedulerLeafQueueInfo extends CapacitySchedulerQueueInfo {
|
|
|
public float getUserLimitFactor() {
|
|
|
return userLimitFactor;
|
|
|
}
|
|
|
+
|
|
|
+ public float getConfiguredMaxAMResourceLimit() {
|
|
|
+ return configuredMaxAMResourceLimit;
|
|
|
+ }
|
|
|
|
|
|
public ResourceInfo getAMResourceLimit() {
|
|
|
return AMResourceLimit;
|
|
@@ -157,10 +164,6 @@ public class CapacitySchedulerLeafQueueInfo extends CapacitySchedulerQueueInfo {
|
|
|
return intraQueuePreemptionDisabled;
|
|
|
}
|
|
|
|
|
|
- public String getOrderingPolicyInfo() {
|
|
|
- return orderingPolicyInfo;
|
|
|
- }
|
|
|
-
|
|
|
public String getDefaultNodeLabelExpression() {
|
|
|
return defaultNodeLabelExpression;
|
|
|
}
|
|
@@ -172,4 +175,13 @@ public class CapacitySchedulerLeafQueueInfo extends CapacitySchedulerQueueInfo {
|
|
|
public boolean isAutoCreatedLeafQueue() {
|
|
|
return isAutoCreatedLeafQueue;
|
|
|
}
|
|
|
+
|
|
|
+ public long getDefaultApplicationLifetime() {
|
|
|
+ return defaultApplicationLifetime;
|
|
|
+ }
|
|
|
+
|
|
|
+ public long getMaxApplicationLifetime() {
|
|
|
+ return maxApplicationLifetime;
|
|
|
+ }
|
|
|
+
|
|
|
}
|