Class MultiTaskSchedulerService

java.lang.Object
com.linkedin.venice.service.AbstractVeniceService
com.linkedin.venice.controller.multitaskscheduler.MultiTaskSchedulerService
All Implemented Interfaces:
Closeable, AutoCloseable

public class MultiTaskSchedulerService extends AbstractVeniceService
This service functions as an interface for scheduling various kind of tasks by loading multiple different task managers. Each task manager is assigned a java executor to enable scheduling and executing tasks in parallel. The life cycle of this service matches the life cycle of HelixVeniceClusterResources, which means there is one multitask scheduler service per cluster. The multitask scheduler service is built when the controller is promoted to leader role for the cluster. Currently, store migration manager is initialized and loaded inside within this service, it is responsible for managing the store migration process, and it is the only task manager currently loaded into this service. For each service per cluster, the store migration task is scheduled inside task scheduler service of the source cluster