Class DefaultInputConsumableDecider
- java.lang.Object
-
- org.apache.flink.runtime.scheduler.strategy.DefaultInputConsumableDecider
-
- All Implemented Interfaces:
InputConsumableDecider
public class DefaultInputConsumableDecider extends Object implements InputConsumableDecider
Default implementation ofInputConsumableDecider
. This decider will judge whether the executionVertex's inputs are consumable as follows:For blocking consumed partition group: Whether all result partitions in the group are finished.
For canBePipelined consumed partition group: whether all result partitions in the group are scheduled.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
DefaultInputConsumableDecider.Factory
Factory forDefaultInputConsumableDecider
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
isConsumableBasedOnFinishedProducers(ConsumedPartitionGroup consumedPartitionGroup)
Determining whether the consumed partition group is consumable based on finished producers.boolean
isInputConsumable(SchedulingExecutionVertex executionVertex, Set<ExecutionVertexID> verticesToSchedule, Map<ConsumedPartitionGroup,Boolean> consumableStatusCache)
Determining whether the input of an execution vertex is consumable.
-
-
-
Method Detail
-
isInputConsumable
public boolean isInputConsumable(SchedulingExecutionVertex executionVertex, Set<ExecutionVertexID> verticesToSchedule, Map<ConsumedPartitionGroup,Boolean> consumableStatusCache)
Description copied from interface:InputConsumableDecider
Determining whether the input of an execution vertex is consumable.- Specified by:
isInputConsumable
in interfaceInputConsumableDecider
- 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 forConsumedPartitionGroup
consumable status. This is to avoid repetitive computation.
-
isConsumableBasedOnFinishedProducers
public boolean isConsumableBasedOnFinishedProducers(ConsumedPartitionGroup consumedPartitionGroup)
Description copied from interface:InputConsumableDecider
Determining whether the consumed partition group is consumable based on finished producers.- Specified by:
isConsumableBasedOnFinishedProducers
in interfaceInputConsumableDecider
- Parameters:
consumedPartitionGroup
- to be determined whether it is consumable.
-
-