Skip to content

Commit e6225bd

Browse files
authored
[GCS] Fix the bug about raylet receiving duplicate actor creation tasks (#9422)
1 parent 5291bf2 commit e6225bd

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/ray/raylet/node_manager.cc

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2300,7 +2300,11 @@ void NodeManager::SubmitTask(const Task &task, const Lineage &uncommitted_lineag
23002300
RAY_LOG(DEBUG) << "Submitting task: " << task.DebugString();
23012301

23022302
if (local_queues_.HasTask(task_id)) {
2303-
if (spec.IsActorCreationTask()) {
2303+
if (RayConfig::instance().gcs_actor_service_enabled() && spec.IsActorCreationTask()) {
2304+
// NOTE(hchen): Normally when raylet receives a duplicated actor creation task
2305+
// from GCS, raylet should just ignore the task. However, due to the hack that
2306+
// we save the RPC reply in task's OnDispatch callback, we have to remove the
2307+
// old task and re-add the new task, to make sure the RPC reply callback is correct.
23042308
RAY_LOG(WARNING) << "Submitted actor creation task " << task_id
23052309
<< " is already queued. This is most likely due to a GCS restart. "
23062310
"We will remove "

0 commit comments

Comments
 (0)