diff --git a/src/ray/raylet/node_manager.cc b/src/ray/raylet/node_manager.cc index 1072e5a6f..2be170a46 100644 --- a/src/ray/raylet/node_manager.cc +++ b/src/ray/raylet/node_manager.cc @@ -750,6 +750,14 @@ void NodeManager::ScheduleTasks() { EnqueuePlaceableTask(t); } } + + // All remaining placeable tasks should be registered with the task dependency + // manager. TaskDependencyManager::TaskPending() is assumed to be idempotent. + // TODO(atumanov): evaluate performance implications of registering all new tasks on + // submission vs. registering remaining queued placeable tasks here. + for (const auto &task : local_queues_.GetPlaceableTasks()) { + task_dependency_manager_.TaskPending(task); + } } void NodeManager::TreatTaskAsFailed(const TaskSpecification &spec) {