public class DefaultInputConsumableDecider extends Object implements InputConsumableDecider
InputConsumableDecider. 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.
| Modifier and Type | Class and Description |
|---|---|
static class |
DefaultInputConsumableDecider.Factory
Factory for
DefaultInputConsumableDecider. |
| Modifier and Type | Method and 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.
|
public boolean isInputConsumable(SchedulingExecutionVertex executionVertex, Set<ExecutionVertexID> verticesToSchedule, Map<ConsumedPartitionGroup,Boolean> consumableStatusCache)
InputConsumableDeciderisInputConsumable in interface InputConsumableDeciderexecutionVertex - 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.public boolean isConsumableBasedOnFinishedProducers(ConsumedPartitionGroup consumedPartitionGroup)
InputConsumableDeciderisConsumableBasedOnFinishedProducers in interface InputConsumableDeciderconsumedPartitionGroup - to be determined whether it is consumable.Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.