Package io.trino.execution.scheduler
Class MultiSourcePartitionedScheduler
java.lang.Object
io.trino.execution.scheduler.MultiSourcePartitionedScheduler
- All Implemented Interfaces:
StageScheduler,Closeable,AutoCloseable
@NotThreadSafe
public class MultiSourcePartitionedScheduler
extends Object
implements StageScheduler
-
Constructor Summary
ConstructorsConstructorDescriptionMultiSourcePartitionedScheduler(StageExecution stageExecution, Map<PlanNodeId, SplitSource> splitSources, SplitPlacementPolicy splitPlacementPolicy, int splitBatchSize, DynamicFilterService dynamicFilterService, TableExecuteContextManager tableExecuteContextManager, BooleanSupplier anySourceTaskBlocked) -
Method Summary
-
Constructor Details
-
MultiSourcePartitionedScheduler
public MultiSourcePartitionedScheduler(StageExecution stageExecution, Map<PlanNodeId, SplitSource> splitSources, SplitPlacementPolicy splitPlacementPolicy, int splitBatchSize, DynamicFilterService dynamicFilterService, TableExecuteContextManager tableExecuteContextManager, BooleanSupplier anySourceTaskBlocked)
-
-
Method Details
-
start
public void start()Description copied from interface:StageSchedulerCalled by the query scheduler when the scheduling process begins. This method is called before the ExecutionSchedule takes a decision to schedule a stage but after the query scheduling has been fully initialized. Within this method the scheduler may decide to schedule tasks that are necessary for query execution to make progress. For example the scheduler may decide to schedule a task without assigning any splits to unblock dynamic filter collection.- Specified by:
startin interfaceStageScheduler
-
schedule
Description copied from interface:StageSchedulerSchedules as much work as possible without blocking. The schedule results is a hint to the query scheduler if and when the stage scheduler should be invoked again. It is important to note that this is only a hint and the query scheduler may call the schedule method at any time.- Specified by:
schedulein interfaceStageScheduler
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein interfaceStageScheduler
-