Class PhasedExecutionSchedule
java.lang.Object
io.trino.execution.scheduler.policy.PhasedExecutionSchedule
- All Implemented Interfaces:
ExecutionSchedule
Schedules stages choosing to order to provide the best resource utilization.
This means that stages which output won't be consumed (e.g. join probe side) will
not be scheduled until dependent stages finish (e.g. join build source stages).
Contrary to
LegacyPhasedExecutionPolicy, PhasedExecutionSchedule will
schedule multiple source stages in order to fully utilize IO.-
Method Summary
Modifier and TypeMethodDescriptionstatic PhasedExecutionScheduleforStages(Collection<StageExecution> stages) boolean
-
Method Details
-
forStages
-
getStagesToSchedule
- Specified by:
getStagesToSchedulein interfaceExecutionSchedule
-
isFinished
public boolean isFinished()- Specified by:
isFinishedin interfaceExecutionSchedule
-