@InterfaceAudience.Private @InterfaceStability.Unstable public class FiCaSchedulerApp extends SchedulerApplicationAttempt
SchedulerApplicationAttempt.AMState
appAMNodePartitionName, appSchedulingInfo, attemptId, attemptResourceUsage, isStopped, lastMemoryAggregateAllocationUpdateTime, lastScheduledContainer, liveContainers, newlyAllocatedContainers, newlyDecreasedContainers, newlyIncreasedContainers, queue, reservedContainers, rmContext, updatedNMTokens
Constructor and Description |
---|
FiCaSchedulerApp(org.apache.hadoop.yarn.api.records.ApplicationAttemptId applicationAttemptId,
String user,
Queue queue,
ActiveUsersManager activeUsersManager,
RMContext rmContext) |
FiCaSchedulerApp(org.apache.hadoop.yarn.api.records.ApplicationAttemptId applicationAttemptId,
String user,
Queue queue,
ActiveUsersManager activeUsersManager,
RMContext rmContext,
org.apache.hadoop.yarn.api.records.Priority appPriority,
boolean isAttemptRecovering) |
Modifier and Type | Method and Description |
---|---|
RMContainer |
allocate(NodeType type,
FiCaSchedulerNode node,
org.apache.hadoop.yarn.api.records.Priority priority,
org.apache.hadoop.yarn.api.records.ResourceRequest request,
org.apache.hadoop.yarn.api.records.Container container) |
CSAssignment |
assignContainers(org.apache.hadoop.yarn.api.records.Resource clusterResource,
FiCaSchedulerNode node,
ResourceLimits currentResourceLimits,
SchedulingMode schedulingMode,
RMContainer reservedContainer) |
boolean |
containerCompleted(RMContainer rmContainer,
org.apache.hadoop.yarn.api.records.ContainerStatus containerStatus,
RMContainerEventType event,
String partition) |
RMContainer |
findNodeToUnreserve(org.apache.hadoop.yarn.api.records.Resource clusterResource,
FiCaSchedulerNode node,
org.apache.hadoop.yarn.api.records.Priority priority,
org.apache.hadoop.yarn.api.records.Resource minimumUnreservedResource) |
protected void |
getActivedAppDiagnosticMessage(StringBuilder diagnosticMessage) |
Allocation |
getAllocation(org.apache.hadoop.yarn.util.resource.ResourceCalculator rc,
org.apache.hadoop.yarn.api.records.Resource clusterResource,
org.apache.hadoop.yarn.api.records.Resource minimumAllocation)
This method produces an Allocation that includes the current view
of the resources that will be allocated to and preempted from this
application.
|
LeafQueue |
getCSLeafQueue() |
org.apache.hadoop.yarn.api.records.Resource |
getHeadroom()
Get available headroom in terms of resources for the application's user.
|
CapacityHeadroomProvider |
getHeadroomProvider() |
float |
getLocalityWaitFactor(org.apache.hadoop.yarn.api.records.Priority priority,
int clusterNodes) |
org.apache.hadoop.yarn.api.records.NodeId |
getNodeIdToUnreserve(org.apache.hadoop.yarn.api.records.Priority priority,
org.apache.hadoop.yarn.api.records.Resource resourceNeedUnreserve,
org.apache.hadoop.yarn.util.resource.ResourceCalculator rc,
org.apache.hadoop.yarn.api.records.Resource clusterResource) |
protected void |
getPendingAppDiagnosticMessage(StringBuilder diagnosticMessage) |
org.apache.hadoop.yarn.api.records.ApplicationResourceUsageReport |
getResourceUsageReport()
Recalculates the per-app, percent of queue metric, specific to the
Capacity Scheduler.
|
org.apache.hadoop.yarn.api.records.Resource |
getTotalPendingRequests() |
Map<String,org.apache.hadoop.yarn.api.records.Resource> |
getTotalPendingRequestsPerPartition() |
void |
markContainerForPreemption(org.apache.hadoop.yarn.api.records.ContainerId cont) |
void |
nodePartitionUpdated(RMContainer rmContainer,
String oldPartition,
String newPartition) |
void |
reserve(org.apache.hadoop.yarn.api.records.Priority priority,
FiCaSchedulerNode node,
RMContainer rmContainer,
org.apache.hadoop.yarn.api.records.Container container) |
boolean |
reserveIncreasedContainer(org.apache.hadoop.yarn.api.records.Priority priority,
FiCaSchedulerNode node,
RMContainer rmContainer,
org.apache.hadoop.yarn.api.records.Resource reservedResource) |
void |
setHeadroomProvider(CapacityHeadroomProvider headroomProvider) |
void |
transferStateFromPreviousAttempt(SchedulerApplicationAttempt appAttempt) |
boolean |
unreserve(org.apache.hadoop.yarn.api.records.Priority priority,
FiCaSchedulerNode node,
RMContainer rmContainer) |
void |
updateAppSkipNodeDiagnostics(String message)
Set the message temporarily if the reason is known for why scheduling did
not happen for a given node, if not message will be over written
|
void |
updateNodeInfoForAMDiagnostics(FiCaSchedulerNode node) |
addMissedNonPartitionedRequestSchedulingOpportunity, addReReservation, addSchedulingOpportunity, compareInputOrderTo, containerLaunchedOnNode, decreaseContainer, getAMResource, getAMResource, getAppAMNodePartitionName, getAppAttemptResourceUsage, getApplicationAttemptId, getApplicationId, getAppSchedulingInfo, getBlacklistedNodes, getCurrentConsumption, getCurrentReservation, getId, getLastScheduledContainer, getLiveContainers, getLiveContainersMap, getNewContainerId, getNumReservedContainers, getPendingRelease, getPriorities, getPriority, getQueue, getQueueName, getReReservations, getReservedContainers, getResource, getResourceLimit, getResourceRequest, getResourceRequests, getRMContainer, getSchedulingOpportunities, getSchedulingResourceUsage, getTotalRequiredResources, getUnmanagedAM, getUser, hasPendingResourceRequest, incNumAllocatedContainers, increaseContainer, isAmRunning, isPending, isPlaceBlacklisted, isRecovering, isReserved, isStopped, isWaitingForAMContainer, move, pullNewlyAllocatedContainers, pullNewlyDecreasedContainers, pullNewlyIncreasedContainers, pullUpdatedNMTokens, recordContainerAllocationTime, recordContainerRequestTime, recoverContainer, recoverResourceRequestsForContainer, removeIncreaseRequest, reserve, reserveIncreasedContainer, resetMissedNonPartitionedRequestSchedulingOpportunity, resetReReservations, resetSchedulingOpportunities, resetSchedulingOpportunities, setAMResource, setAMResource, setAmRunning, setAppAMNodePartitionName, setApplicationHeadroomForMetrics, setAttemptRecovering, setHeadroom, setPriority, showRequests, stop, subtractSchedulingOpportunity, updateAMContainerDiagnostics, updateBlacklist, updateIncreaseRequests, updateResourceRequests
public FiCaSchedulerApp(org.apache.hadoop.yarn.api.records.ApplicationAttemptId applicationAttemptId, String user, Queue queue, ActiveUsersManager activeUsersManager, RMContext rmContext)
public FiCaSchedulerApp(org.apache.hadoop.yarn.api.records.ApplicationAttemptId applicationAttemptId, String user, Queue queue, ActiveUsersManager activeUsersManager, RMContext rmContext, org.apache.hadoop.yarn.api.records.Priority appPriority, boolean isAttemptRecovering)
public boolean containerCompleted(RMContainer rmContainer, org.apache.hadoop.yarn.api.records.ContainerStatus containerStatus, RMContainerEventType event, String partition)
public RMContainer allocate(NodeType type, FiCaSchedulerNode node, org.apache.hadoop.yarn.api.records.Priority priority, org.apache.hadoop.yarn.api.records.ResourceRequest request, org.apache.hadoop.yarn.api.records.Container container)
public boolean unreserve(org.apache.hadoop.yarn.api.records.Priority priority, FiCaSchedulerNode node, RMContainer rmContainer)
public float getLocalityWaitFactor(org.apache.hadoop.yarn.api.records.Priority priority, int clusterNodes)
public org.apache.hadoop.yarn.api.records.Resource getTotalPendingRequests()
public Map<String,org.apache.hadoop.yarn.api.records.Resource> getTotalPendingRequestsPerPartition()
public void markContainerForPreemption(org.apache.hadoop.yarn.api.records.ContainerId cont)
public Allocation getAllocation(org.apache.hadoop.yarn.util.resource.ResourceCalculator rc, org.apache.hadoop.yarn.api.records.Resource clusterResource, org.apache.hadoop.yarn.api.records.Resource minimumAllocation)
rc
- clusterResource
- minimumAllocation
- public org.apache.hadoop.yarn.api.records.NodeId getNodeIdToUnreserve(org.apache.hadoop.yarn.api.records.Priority priority, org.apache.hadoop.yarn.api.records.Resource resourceNeedUnreserve, org.apache.hadoop.yarn.util.resource.ResourceCalculator rc, org.apache.hadoop.yarn.api.records.Resource clusterResource)
public void setHeadroomProvider(CapacityHeadroomProvider headroomProvider)
public CapacityHeadroomProvider getHeadroomProvider()
public org.apache.hadoop.yarn.api.records.Resource getHeadroom()
SchedulerApplicationAttempt
getHeadroom
in class SchedulerApplicationAttempt
public void transferStateFromPreviousAttempt(SchedulerApplicationAttempt appAttempt)
transferStateFromPreviousAttempt
in class SchedulerApplicationAttempt
public boolean reserveIncreasedContainer(org.apache.hadoop.yarn.api.records.Priority priority, FiCaSchedulerNode node, RMContainer rmContainer, org.apache.hadoop.yarn.api.records.Resource reservedResource)
public void reserve(org.apache.hadoop.yarn.api.records.Priority priority, FiCaSchedulerNode node, RMContainer rmContainer, org.apache.hadoop.yarn.api.records.Container container)
public RMContainer findNodeToUnreserve(org.apache.hadoop.yarn.api.records.Resource clusterResource, FiCaSchedulerNode node, org.apache.hadoop.yarn.api.records.Priority priority, org.apache.hadoop.yarn.api.records.Resource minimumUnreservedResource)
public LeafQueue getCSLeafQueue()
public CSAssignment assignContainers(org.apache.hadoop.yarn.api.records.Resource clusterResource, FiCaSchedulerNode node, ResourceLimits currentResourceLimits, SchedulingMode schedulingMode, RMContainer reservedContainer)
public void nodePartitionUpdated(RMContainer rmContainer, String oldPartition, String newPartition)
protected void getPendingAppDiagnosticMessage(StringBuilder diagnosticMessage)
getPendingAppDiagnosticMessage
in class SchedulerApplicationAttempt
protected void getActivedAppDiagnosticMessage(StringBuilder diagnosticMessage)
getActivedAppDiagnosticMessage
in class SchedulerApplicationAttempt
public void updateAppSkipNodeDiagnostics(String message)
message
- public void updateNodeInfoForAMDiagnostics(FiCaSchedulerNode node)
public org.apache.hadoop.yarn.api.records.ApplicationResourceUsageReport getResourceUsageReport()
getResourceUsageReport
in class SchedulerApplicationAttempt
Copyright © 2017 Apache Software Foundation. All Rights Reserved.