@InterfaceAudience.Private @InterfaceStability.Unstable public abstract class FSQueue extends Schedulable implements Queue
Modifier and Type | Field and Description |
---|---|
protected FSParentQueue |
parent |
protected SchedulingPolicy |
policy |
protected RecordFactory |
recordFactory |
Constructor and Description |
---|
FSQueue(String name,
QueueManager queueMgr,
FairScheduler scheduler,
FSParentQueue parent) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
assignContainerPreCheck(FSSchedulerNode node)
Helper method to check if the queue should attempt assigning resources
|
abstract Collection<FSQueue> |
getChildQueues()
Gets the children of this queue, if any.
|
Resource |
getMaxShare()
Maximum Resource share assigned to the schedulable.
|
FSQueueMetrics |
getMetrics()
Get the queue metrics
|
Resource |
getMinShare()
Minimum Resource share assigned to the schedulable.
|
String |
getName()
Name of job/queue, used for debugging as well as for breaking ties in
scheduling order deterministically.
|
SchedulingPolicy |
getPolicy() |
Priority |
getPriority()
Job priority for jobs in FIFO queues; meaningless for QueueSchedulables.
|
Map<QueueACL,AccessControlList> |
getQueueAcls()
Get ACLs for the queue.
|
QueueInfo |
getQueueInfo(boolean includeChildQueues,
boolean recursive)
Get queue information
|
String |
getQueueName()
Get the queue name
|
long |
getStartTime()
Start time for jobs in FIFO queues; meaningless for QueueSchedulables.
|
ResourceWeights |
getWeights()
Job/queue weight in fair sharing.
|
boolean |
hasAccess(QueueACL acl,
UserGroupInformation user) |
abstract void |
recomputeShares()
Recomputes the shares for all child queues and applications based on this
queue's current share
|
void |
setFairShare(Resource fairShare)
Assign a fair share to this Schedulable.
|
abstract void |
setPolicy(SchedulingPolicy policy) |
protected void |
throwPolicyDoesnotApplyException(SchedulingPolicy policy) |
assignContainer, getDemand, getFairShare, getResourceUsage, toString, updateDemand
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getQueueUserAclInfo
protected final FSParentQueue parent
protected final RecordFactory recordFactory
protected SchedulingPolicy policy
public FSQueue(String name, QueueManager queueMgr, FairScheduler scheduler, FSParentQueue parent)
public String getName()
Schedulable
getName
in class Schedulable
public String getQueueName()
Queue
getQueueName
in interface Queue
public SchedulingPolicy getPolicy()
protected void throwPolicyDoesnotApplyException(SchedulingPolicy policy) throws AllocationConfigurationException
AllocationConfigurationException
public abstract void setPolicy(SchedulingPolicy policy) throws AllocationConfigurationException
AllocationConfigurationException
public ResourceWeights getWeights()
Schedulable
getWeights
in class Schedulable
public Resource getMinShare()
Schedulable
getMinShare
in class Schedulable
public Resource getMaxShare()
Schedulable
getMaxShare
in class Schedulable
public long getStartTime()
Schedulable
getStartTime
in class Schedulable
public Priority getPriority()
Schedulable
getPriority
in class Schedulable
public QueueInfo getQueueInfo(boolean includeChildQueues, boolean recursive)
Queue
getQueueInfo
in interface Queue
includeChildQueues
- include child queues?recursive
- recursively get child queue information?public Map<QueueACL,AccessControlList> getQueueAcls()
Queue
getQueueAcls
in interface Queue
public FSQueueMetrics getMetrics()
Queue
getMetrics
in interface Queue
public void setFairShare(Resource fairShare)
Schedulable
setFairShare
in class Schedulable
public boolean hasAccess(QueueACL acl, UserGroupInformation user)
public abstract void recomputeShares()
public abstract Collection<FSQueue> getChildQueues()
protected boolean assignContainerPreCheck(FSSchedulerNode node)
Copyright © 2013 Apache Software Foundation. All rights reserved.