diff --git a/src/ray/gcs/gcs_server/gcs_task_manager.cc b/src/ray/gcs/gcs_server/gcs_task_manager.cc index 5986f0897cd9..f8171dfff844 100644 --- a/src/ray/gcs/gcs_server/gcs_task_manager.cc +++ b/src/ray/gcs/gcs_server/gcs_task_manager.cc @@ -96,13 +96,13 @@ void GcsTaskManager::GcsTaskManagerStorage::MarkTasksFailedOnWorkerDead( for (const auto &task_locator : task_attempts_itr->second) { MarkTaskAttemptFailedIfNeeded( - task_locator, worker_failure_data.end_time_ms() * 1000, error_info); + task_locator, worker_failure_data.end_time_ms() * 1000 * 1000, error_info); } } void GcsTaskManager::GcsTaskManagerStorage::MarkTaskAttemptFailedIfNeeded( const std::shared_ptr &locator, - int64_t failed_ts, + int64_t failed_ts_ns, const rpc::RayErrorInfo &error_info) { auto &task_events = locator->GetTaskEventsMutable(); // We don't mark tasks as failed if they are already terminated. @@ -113,7 +113,7 @@ void GcsTaskManager::GcsTaskManagerStorage::MarkTaskAttemptFailedIfNeeded( // We could mark the task as failed even if might not have state updates yet (i.e. only // profiling events are reported). auto state_updates = task_events.mutable_state_updates(); - (*state_updates->mutable_state_ts())[ray::rpc::TaskStatus::FAILED] = failed_ts; + (*state_updates->mutable_state_ts())[ray::rpc::TaskStatus::FAILED] = failed_ts_ns; state_updates->mutable_error_info()->CopyFrom(error_info); }