@InterfaceAudience.Private @InterfaceStability.Evolving public class ParentQueue extends AbstractCSQueue
AbstractCSQueue.CapacityConfigType| Modifier and Type | Field and Description | 
|---|---|
| protected List<CSQueue> | childQueues | 
activitiesManager, authorizer, capacityConfigType, csContext, queueEntity, readLock, writeLock| Constructor and Description | 
|---|
| ParentQueue(CapacitySchedulerContext cs,
           String queueName,
           CSQueue parent,
           CSQueue old) | 
| Modifier and Type | Method and Description | 
|---|---|
| void | apply(org.apache.hadoop.yarn.api.records.Resource cluster,
     ResourceCommitRequest<FiCaSchedulerApp,FiCaSchedulerNode> request) | 
| CSAssignment | assignContainers(org.apache.hadoop.yarn.api.records.Resource clusterResource,
                CandidateNodeSet<FiCaSchedulerNode> candidates,
                ResourceLimits resourceLimits,
                SchedulingMode schedulingMode)Assign containers to applications in the queue or it's children (if any). | 
| void | attachContainer(org.apache.hadoop.yarn.api.records.Resource clusterResource,
               FiCaSchedulerApp application,
               RMContainer rmContainer)Attach a container to this queue | 
| void | collectSchedulerApplications(Collection<org.apache.hadoop.yarn.api.records.ApplicationAttemptId> apps)Adds all applications in the queue and its subqueues to the given collection. | 
| void | completedContainer(org.apache.hadoop.yarn.api.records.Resource clusterResource,
                  FiCaSchedulerApp application,
                  FiCaSchedulerNode node,
                  RMContainer rmContainer,
                  org.apache.hadoop.yarn.api.records.ContainerStatus containerStatus,
                  RMContainerEventType event,
                  CSQueue completedChildQueue,
                  boolean sortQueues)A container assigned to the queue has completed. | 
| void | detachContainer(org.apache.hadoop.yarn.api.records.Resource clusterResource,
               FiCaSchedulerApp application,
               RMContainer rmContainer)Detach a container from this queue | 
| void | finishApplication(org.apache.hadoop.yarn.api.records.ApplicationId application,
                 String user)An application submitted to this queue has finished. | 
| void | finishApplicationAttempt(FiCaSchedulerApp application,
                        String queue)An application attempt submitted to this queue has finished. | 
| ActiveUsersManager | getAbstractUsersManager()Get the  AbstractUsersManagerfor the queue. | 
| List<CSQueue> | getChildQueues()Get child queues | 
| int | getNumApplications()Get the number of applications in the queue. | 
| org.apache.hadoop.yarn.api.records.QueueInfo | getQueueInfo(boolean includeChildQueues,
            boolean recursive)Get queue information | 
| QueueOrderingPolicy | getQueueOrderingPolicy() | 
| List<org.apache.hadoop.yarn.api.records.QueueUserACLInfo> | getQueueUserAclInfo(org.apache.hadoop.security.UserGroupInformation user)Get queue ACLs for given  user. | 
| boolean | hasChildQueues() | 
| void | recoverContainer(org.apache.hadoop.yarn.api.records.Resource clusterResource,
                SchedulerApplicationAttempt attempt,
                RMContainer rmContainer)Recover the state of the queue for a given container. | 
| void | reinitialize(CSQueue newlyParsedQueue,
            org.apache.hadoop.yarn.api.records.Resource clusterResource)Reinitialize the queue. | 
| protected void | setupQueueConfigs(org.apache.hadoop.yarn.api.records.Resource clusterResource) | 
| void | stopQueue()Stop the queue. | 
| void | submitApplication(org.apache.hadoop.yarn.api.records.ApplicationId applicationId,
                 String user,
                 String queue)Submit a new application to the queue. | 
| void | submitApplicationAttempt(FiCaSchedulerApp application,
                        String userName)Submit an application attempt to the queue. | 
| void | submitApplicationAttempt(FiCaSchedulerApp application,
                        String userName,
                        boolean isMoveApp)Submit an application attempt to the queue. | 
| String | toString() | 
| void | updateClusterResource(org.apache.hadoop.yarn.api.records.Resource clusterResource,
                     ResourceLimits resourceLimits)Update the cluster resource for queues as we add/remove nodes | 
| void | validateSubmitApplication(org.apache.hadoop.yarn.api.records.ApplicationId applicationId,
                         String userName,
                         String queue)Validate submitApplication api so that moveApplication do a pre-check. | 
accept, accessibleToPartition, activeQueue, appFinished, assignContainers, decPendingResource, decReservedResource, decUsedResource, getAbsoluteCapacity, getAbsoluteMaximumCapacity, getAbsoluteUsedCapacity, getAccessibleNodeLabels, getACLs, getCapacity, getCapacityConfigType, getDefaultApplicationLifetime, getDefaultApplicationPriority, getDefaultAppLifetimeWasSpecifiedInConfig, getDefaultNodeLabelExpression, getEffectiveCapacity, getEffectiveCapacityDown, getEffectiveMaxCapacity, getEffectiveMaxCapacityDown, getIntraQueuePreemptionDisabled, getIntraQueuePreemptionDisabledInHierarchy, getKillableContainers, getMaximumAllocation, getMaximumApplicationLifetime, getMaximumCapacity, getMaxParallelApps, getMetrics, getMinimumAllocation, getMultiNodeSortingPolicyName, getNodeLabelsForQueue, getNumContainers, getParent, getPreemptionDisabled, getPriority, getPrivilegedEntity, getQueueCapacities, getQueueConfigurations, getQueueInfo, getQueueName, getQueuePath, getQueueResourceQuotas, getQueueResourceUsage, getQueueShortName, getQueueStatistics, getReadLock, getReservationContinueLooking, getState, getTotalKillableResource, getUsedCapacity, getUsedResources, getUserWeights, hasAccess, incPendingResource, incReservedResource, incUsedResource, recoverDrainingState, releaseResource, setMaxParallelApps, setMultiNodeSortingPolicyName, setParent, setupConfigurableCapacities, setupConfigurableCapacities, setupQueueConfigs, updateConfigurableResourceRequirement, updateQueueStatepublic ParentQueue(CapacitySchedulerContext cs, String queueName, CSQueue parent, CSQueue old) throws IOException
IOExceptionprotected void setupQueueConfigs(org.apache.hadoop.yarn.api.records.Resource clusterResource)
                          throws IOException
IOExceptionpublic org.apache.hadoop.yarn.api.records.QueueInfo getQueueInfo(boolean includeChildQueues,
                                                                 boolean recursive)
QueueincludeChildQueues - include child queues?recursive - recursively get child queue information?public List<org.apache.hadoop.yarn.api.records.QueueUserACLInfo> getQueueUserAclInfo(org.apache.hadoop.security.UserGroupInformation user)
Queueuser.user - usernamepublic void reinitialize(CSQueue newlyParsedQueue, org.apache.hadoop.yarn.api.records.Resource clusterResource) throws IOException
CSQueuenewlyParsedQueue - new queue to re-initalize fromclusterResource - resources in the clusterIOExceptionpublic void submitApplication(org.apache.hadoop.yarn.api.records.ApplicationId applicationId,
                              String user,
                              String queue)
                       throws org.apache.hadoop.security.AccessControlException
CSQueueapplicationId - the applicationId of the application being submitteduser - user who submitted the applicationqueue - queue to which the application is submittedorg.apache.hadoop.security.AccessControlExceptionpublic void validateSubmitApplication(org.apache.hadoop.yarn.api.records.ApplicationId applicationId,
                                      String userName,
                                      String queue)
                               throws org.apache.hadoop.security.AccessControlException
CSQueuevalidateSubmitApplication in interface CSQueuevalidateSubmitApplication in class AbstractCSQueueapplicationId - Application IDuserName - User Namequeue - Queue Nameorg.apache.hadoop.security.AccessControlException - if any acl violation is there.public void submitApplicationAttempt(FiCaSchedulerApp application, String userName)
CSQueuepublic void submitApplicationAttempt(FiCaSchedulerApp application, String userName, boolean isMoveApp)
CSQueueapplication - application whose attempt is being submitteduserName - user who submitted the application attemptisMoveApp - is application being moved across the queuepublic void finishApplicationAttempt(FiCaSchedulerApp application, String queue)
CSQueuepublic void finishApplication(org.apache.hadoop.yarn.api.records.ApplicationId application,
                              String user)
CSQueueuser - user who submitted the applicationpublic CSAssignment assignContainers(org.apache.hadoop.yarn.api.records.Resource clusterResource, CandidateNodeSet<FiCaSchedulerNode> candidates, ResourceLimits resourceLimits, SchedulingMode schedulingMode)
CSQueueclusterResource - the resource of the cluster.candidates - CandidateNodeSet the nodes that are considered
                   for the current placement.resourceLimits - how much overall resource of this queue can use.schedulingMode - Type of exclusive check when assign container on a 
 NodeManager, see SchedulingMode.public void completedContainer(org.apache.hadoop.yarn.api.records.Resource clusterResource,
                               FiCaSchedulerApp application,
                               FiCaSchedulerNode node,
                               RMContainer rmContainer,
                               org.apache.hadoop.yarn.api.records.ContainerStatus containerStatus,
                               RMContainerEventType event,
                               CSQueue completedChildQueue,
                               boolean sortQueues)
CSQueueclusterResource - the resource of the clusterapplication - application to which the container was assignednode - node on which the container completedrmContainer - completed container, 
                  null if it was just a reservationcontainerStatus - ContainerStatus for the completed 
                        containerevent - event to be sent to the containercompletedChildQueue - CSQueue to reinsert in childQueuessortQueues - indicates whether it should re-sort the queuespublic void updateClusterResource(org.apache.hadoop.yarn.api.records.Resource clusterResource,
                                  ResourceLimits resourceLimits)
CSQueueclusterResource - the current cluster resourceresourceLimits - the current ResourceLimitspublic boolean hasChildQueues()
hasChildQueues in class AbstractCSQueuepublic List<CSQueue> getChildQueues()
CSQueuepublic void recoverContainer(org.apache.hadoop.yarn.api.records.Resource clusterResource,
                             SchedulerApplicationAttempt attempt,
                             RMContainer rmContainer)
QueueclusterResource - the resource of the clusterattempt - the application for which the container was allocatedrmContainer - the container that was recovered.public ActiveUsersManager getAbstractUsersManager()
CSQueueAbstractUsersManager for the queue.AbstractUsersManager for the queuepublic void collectSchedulerApplications(Collection<org.apache.hadoop.yarn.api.records.ApplicationAttemptId> apps)
CSQueueapps - the collection to add the applications topublic void attachContainer(org.apache.hadoop.yarn.api.records.Resource clusterResource,
                            FiCaSchedulerApp application,
                            RMContainer rmContainer)
CSQueueclusterResource - the current cluster resourceapplication - application to which the container was assignedrmContainer - the container to attachpublic void detachContainer(org.apache.hadoop.yarn.api.records.Resource clusterResource,
                            FiCaSchedulerApp application,
                            RMContainer rmContainer)
CSQueueclusterResource - the current cluster resourceapplication - application to which the container was assignedrmContainer - the container to detachpublic int getNumApplications()
CSQueuepublic void apply(org.apache.hadoop.yarn.api.records.Resource cluster,
                  ResourceCommitRequest<FiCaSchedulerApp,FiCaSchedulerNode> request)
public void stopQueue()
SchedulerQueuepublic QueueOrderingPolicy getQueueOrderingPolicy()
Copyright © 2008–2023 Apache Software Foundation. All rights reserved.