Interface SchedulingStrategy
- All Known Implementing Classes:
PipelinedRegionSchedulingStrategy,VertexwiseSchedulingStrategy
public interface SchedulingStrategy
Component which encapsulates the scheduling logic. It can react to execution state changes and
partition consumable events. Moreover, it is responsible for resolving task failures.
-
Method Summary
Modifier and TypeMethodDescriptionvoidonExecutionStateChange(ExecutionVertexID executionVertexId, ExecutionState executionState) Called whenever anExecutionchanges its state.voidonPartitionConsumable(IntermediateResultPartitionID resultPartitionId) Called whenever anIntermediateResultPartitionbecomes consumable.voidrestartTasks(Set<ExecutionVertexID> verticesToRestart) Called whenever vertices need to be restarted (due to task failure).default voidSchedules all vertices and excludes any vertices that are already finished or whose inputs are not yet ready.voidCalled when the scheduling is started (initial scheduling operation).
-
Method Details
-
startScheduling
void startScheduling()Called when the scheduling is started (initial scheduling operation). -
restartTasks
Called whenever vertices need to be restarted (due to task failure).- Parameters:
verticesToRestart- The tasks need to be restarted
-
onExecutionStateChange
Called whenever anExecutionchanges its state.- Parameters:
executionVertexId- The id of the taskexecutionState- The new state of the execution
-
onPartitionConsumable
Called whenever anIntermediateResultPartitionbecomes consumable.- Parameters:
resultPartitionId- The id of the result partition
-
scheduleAllVerticesIfPossible
default void scheduleAllVerticesIfPossible()Schedules all vertices and excludes any vertices that are already finished or whose inputs are not yet ready.
-