org.apache.tez.dag.app.rm
Class TaskScheduler

java.lang.Object
  extended by org.apache.hadoop.service.AbstractService
      extended by org.apache.tez.dag.app.rm.TaskScheduler
All Implemented Interfaces:
Closeable, org.apache.hadoop.service.Service, org.apache.hadoop.yarn.client.api.async.AMRMClientAsync.CallbackHandler

public class TaskScheduler
extends org.apache.hadoop.service.AbstractService
implements org.apache.hadoop.yarn.client.api.async.AMRMClientAsync.CallbackHandler


Nested Class Summary
static interface TaskScheduler.TaskSchedulerAppCallback
           
 
Nested classes/interfaces inherited from interface org.apache.hadoop.service.Service
org.apache.hadoop.service.Service.STATE
 
Field Summary
protected  AtomicBoolean shouldUnregister
           
 
Constructor Summary
TaskScheduler(TaskScheduler.TaskSchedulerAppCallback appClient, ContainerSignatureMatcher containerSignatureMatcher, String appHostName, int appHostPort, String appTrackingUrl, AppContext appContext)
           
 
Method Summary
 void allocateTask(Object task, org.apache.hadoop.yarn.api.records.Resource capability, String[] hosts, String[] racks, org.apache.hadoop.yarn.api.records.Priority priority, Object containerSignature, Object clientCookie)
           
 void blacklistNode(org.apache.hadoop.yarn.api.records.NodeId nodeId)
           
 Object deallocateContainer(org.apache.hadoop.yarn.api.records.ContainerId containerId)
           
 boolean deallocateTask(Object task, boolean taskSucceeded)
           
 org.apache.hadoop.yarn.api.records.Resource getAvailableResources()
           
 int getClusterNodeCount()
           
 float getProgress()
           
 org.apache.hadoop.yarn.api.records.Resource getTotalResources()
           
 void onContainersAllocated(List<org.apache.hadoop.yarn.api.records.Container> containers)
           
 void onContainersCompleted(List<org.apache.hadoop.yarn.api.records.ContainerStatus> statuses)
           
 void onError(Throwable t)
           
 void onNodesUpdated(List<org.apache.hadoop.yarn.api.records.NodeReport> updatedNodes)
           
 void onShutdownRequest()
           
 void resetMatchLocalityForAllHeldContainers()
           
 void serviceInit(org.apache.hadoop.conf.Configuration conf)
           
 void serviceStart()
           
 void serviceStop()
           
 void setShouldUnregister()
           
 void unblacklistNode(org.apache.hadoop.yarn.api.records.NodeId nodeId)
           
 
Methods inherited from class org.apache.hadoop.service.AbstractService
close, getBlockers, getConfig, getFailureCause, getFailureState, getLifecycleHistory, getName, getServiceState, getStartTime, init, isInState, noteFailure, putBlocker, registerGlobalListener, registerServiceListener, removeBlocker, setConfig, start, stop, toString, unregisterGlobalListener, unregisterServiceListener, waitForServiceToStop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

shouldUnregister

protected AtomicBoolean shouldUnregister
Constructor Detail

TaskScheduler

public TaskScheduler(TaskScheduler.TaskSchedulerAppCallback appClient,
                     ContainerSignatureMatcher containerSignatureMatcher,
                     String appHostName,
                     int appHostPort,
                     String appTrackingUrl,
                     AppContext appContext)
Method Detail

getAvailableResources

public org.apache.hadoop.yarn.api.records.Resource getAvailableResources()

getClusterNodeCount

public int getClusterNodeCount()

setShouldUnregister

public void setShouldUnregister()

serviceInit

public void serviceInit(org.apache.hadoop.conf.Configuration conf)
Overrides:
serviceInit in class org.apache.hadoop.service.AbstractService

serviceStart

public void serviceStart()
Overrides:
serviceStart in class org.apache.hadoop.service.AbstractService

serviceStop

public void serviceStop()
                 throws InterruptedException
Overrides:
serviceStop in class org.apache.hadoop.service.AbstractService
Throws:
InterruptedException

onContainersCompleted

public void onContainersCompleted(List<org.apache.hadoop.yarn.api.records.ContainerStatus> statuses)
Specified by:
onContainersCompleted in interface org.apache.hadoop.yarn.client.api.async.AMRMClientAsync.CallbackHandler

onContainersAllocated

public void onContainersAllocated(List<org.apache.hadoop.yarn.api.records.Container> containers)
Specified by:
onContainersAllocated in interface org.apache.hadoop.yarn.client.api.async.AMRMClientAsync.CallbackHandler

resetMatchLocalityForAllHeldContainers

public void resetMatchLocalityForAllHeldContainers()

onShutdownRequest

public void onShutdownRequest()
Specified by:
onShutdownRequest in interface org.apache.hadoop.yarn.client.api.async.AMRMClientAsync.CallbackHandler

onNodesUpdated

public void onNodesUpdated(List<org.apache.hadoop.yarn.api.records.NodeReport> updatedNodes)
Specified by:
onNodesUpdated in interface org.apache.hadoop.yarn.client.api.async.AMRMClientAsync.CallbackHandler

getProgress

public float getProgress()
Specified by:
getProgress in interface org.apache.hadoop.yarn.client.api.async.AMRMClientAsync.CallbackHandler

onError

public void onError(Throwable t)
Specified by:
onError in interface org.apache.hadoop.yarn.client.api.async.AMRMClientAsync.CallbackHandler

getTotalResources

public org.apache.hadoop.yarn.api.records.Resource getTotalResources()

blacklistNode

public void blacklistNode(org.apache.hadoop.yarn.api.records.NodeId nodeId)

unblacklistNode

public void unblacklistNode(org.apache.hadoop.yarn.api.records.NodeId nodeId)

allocateTask

public void allocateTask(Object task,
                         org.apache.hadoop.yarn.api.records.Resource capability,
                         String[] hosts,
                         String[] racks,
                         org.apache.hadoop.yarn.api.records.Priority priority,
                         Object containerSignature,
                         Object clientCookie)

deallocateTask

public boolean deallocateTask(Object task,
                              boolean taskSucceeded)
Parameters:
task - the task to de-allocate.
taskSucceeded - specify whether the task succeeded or failed.
Returns:
true if a container is assigned to this task.

deallocateContainer

public Object deallocateContainer(org.apache.hadoop.yarn.api.records.ContainerId containerId)


Copyright © 2014 Apache Software Foundation. All rights reserved.