Interface InputConsumableDecider

All Known Implementing Classes:
AllFinishedInputConsumableDecider, DefaultInputConsumableDecider, PartialFinishedInputConsumableDecider

public interface InputConsumableDecider
InputConsumableDecider is responsible for determining whether the input of an executionVertex or a consumed partition group is consumable.
  • Method Details

    • isInputConsumable

      boolean isInputConsumable(SchedulingExecutionVertex executionVertex, Set<ExecutionVertexID> verticesToSchedule, Map<ConsumedPartitionGroup,Boolean> consumableStatusCache)
      Determining whether the input of an execution vertex is consumable.
      Parameters:
      executionVertex - to be determined whether it's input is consumable.
      verticesToSchedule - vertices that are not yet scheduled but already decided to be scheduled.
      consumableStatusCache - a cache for ConsumedPartitionGroup consumable status. This is to avoid repetitive computation.
    • isConsumableBasedOnFinishedProducers

      boolean isConsumableBasedOnFinishedProducers(ConsumedPartitionGroup consumedPartitionGroup)
      Determining whether the consumed partition group is consumable based on finished producers.
      Parameters:
      consumedPartitionGroup - to be determined whether it is consumable.