pub async fn startup<T: 'static + AsLogicalPlan, U: 'static + AsExecutionPlan>(
scheduler: SchedulerGrpcClient<Channel>,
config: Arc<ExecutorProcessConfig>,
executor: Arc<Executor>,
codec: KapotCodec<T, U>,
stop_send: Sender<bool>,
shutdown_noti: &ShutdownNotifier,
) -> Result<JoinHandle<Result<(), KapotError>>, KapotError>