Package org.apache.storm.scheduler.resource.strategies.scheduling

# Class RoundRobinResourceAwareStrategy

java.lang.Object
org.apache.storm.scheduler.resource.strategies.scheduling.BaseResourceAwareStrategy
org.apache.storm.scheduler.resource.strategies.scheduling.RoundRobinResourceAwareStrategy

All Implemented Interfaces:
  `IStrategy`

public class RoundRobinResourceAwareStrategy extends BaseResourceAwareStrategy

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class org.apache.storm.scheduler.resource.strategies.scheduling.BaseResourceAwareStrategy

  `BaseResourceAwareStrategy.NodeSortType`

- ## Field Summary

  ### Fields inherited from class org.apache.storm.scheduler.resource.strategies.scheduling.BaseResourceAwareStrategy

  `cluster, compToExecs, config, execSorter, execToComp, nodes, nodeSorter, nodeSortType, orderExecutorsByProximity, searcherState, sortNodesForEachExecutor, topologyDetails, topoName`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `RoundRobinResourceAwareStrategy()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected SchedulingResult`
  `scheduleExecutorsOnNodes(List<ExecutorDetails> orderedExecutors, Iterable<String> sortedNodesIterable)`
  For each component try to schedule executors in sequence on the nodes.

  ### Methods inherited from class org.apache.storm.scheduler.resource.strategies.scheduling.BaseResourceAwareStrategy

  `assignBoundAckersForNewWorkerSlot, checkSchedulingFeasibility, getMaxStateSearchFromTopoConf, hostnameToNodes, idToNode, isExecAssignmentToWorkerValid, isOrderByProximity, prepare, prepareForScheduling, schedule, setExecSorter, setNodeSorter`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### RoundRobinResourceAwareStrategy

    public RoundRobinResourceAwareStrategy()

- ## Method Details

  - ### scheduleExecutorsOnNodes

    protected SchedulingResult scheduleExecutorsOnNodes(List<ExecutorDetails> orderedExecutors, Iterable<String> sortedNodesIterable)
    For each component try to schedule executors in sequence on the nodes.
    Overrides:
      `scheduleExecutorsOnNodes` in class `BaseResourceAwareStrategy`
    Parameters:
      `orderedExecutors` - Executors sorted in the preferred order cannot be null
      `sortedNodesIterable` - Node iterable which cannot be null, relies on behavior when `BaseResourceAwareStrategy.sortNodesForEachExecutor` is false
    Returns:
      SchedulingResult with success attribute set to true or false indicting whether ALL executors were assigned. @{#}