diff --git a/src/local_scheduler/local_scheduler_algorithm.cc b/src/local_scheduler/local_scheduler_algorithm.cc index e6af264e3..ded56f582 100644 --- a/src/local_scheduler/local_scheduler_algorithm.cc +++ b/src/local_scheduler/local_scheduler_algorithm.cc @@ -1528,6 +1528,10 @@ void handle_actor_worker_disconnect(LocalSchedulerState *state, /* Attempt to dispatch some tasks because some resources may have freed up. */ dispatch_all_tasks(state, algorithm_state); + + /* Start a worker to replace the removed actor's worker and replenish the + * worker pool. */ + start_worker(state); } /* NOTE(swang): For tasks that saved a checkpoint, we should consider