Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[xray] push warning to driver for infeasible tasks #2784

Merged
merged 3 commits into from
Sep 1, 2018
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
push warning to driver for infeasible tasks
  • Loading branch information
atumanov committed Aug 31, 2018
commit c4dcc43b2179d750b95b203321a42ae640ae2e40
12 changes: 12 additions & 0 deletions src/ray/raylet/node_manager.cc
Original file line number Diff line number Diff line change
Expand Up @@ -842,6 +842,18 @@ void NodeManager::ScheduleTasks(
for (const auto &task : local_queues_.GetPlaceableTasks()) {
task_dependency_manager_.TaskPending(task);
move_task_set.insert(task.GetTaskSpecification().TaskId());
// Push a warning to the task's driver that this task is currently infeasible.
{
std::string type = "infeasible_task";
std::ostringstream error_message;
error_message << "The task with ID " << task.GetTaskSpecification().TaskId()
<< " is infeasible and cannot currently be executed. "
<< "It requested "
<< task.GetTaskSpecification().GetRequiredResources().ToString();
RAY_CHECK_OK(gcs_client_->error_table().PushErrorToDriver(
task.GetTaskSpecification().DriverId(), type, error_message.str(),
current_time_ms()));
}
// Assert that this placeable task is not feasible locally (necessary but not
// sufficient).
RAY_CHECK(!task.GetTaskSpecification().GetRequiredResources().IsSubset(
Expand Down