From 443bc789cf8b4afc5cf221bca8231760b9aaf75f Mon Sep 17 00:00:00 2001 From: Ian Roddis Date: Fri, 11 Feb 2022 13:06:20 -0400 Subject: [PATCH] Unlocking unique lock to prevent one bad agent stalling the rest --- libdaggy/src/executors/task/DaggyRunnerTaskExecutor.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libdaggy/src/executors/task/DaggyRunnerTaskExecutor.cpp b/libdaggy/src/executors/task/DaggyRunnerTaskExecutor.cpp index 0957543..94aa005 100644 --- a/libdaggy/src/executors/task/DaggyRunnerTaskExecutor.cpp +++ b/libdaggy/src/executors/task/DaggyRunnerTaskExecutor.cpp @@ -171,6 +171,8 @@ TaskFuture DaggyRunnerTaskExecutor::execute(DAGRunID runID, exe_capacity->cores -= taskUsed.cores; exe_capacity->memoryMB -= taskUsed.memoryMB; + lock.unlock(); + std::stringstream ss; ss << exe_runner << "/v1/task/" << runID << "/" << taskName; auto url = ss.str(); @@ -194,7 +196,7 @@ TaskFuture DaggyRunnerTaskExecutor::execute(DAGRunID runID, auto fut = rt.fut; { - std::lock_guard lock(rtGuard_); + std::lock_guard rtLock(rtGuard_); runningTasks_.emplace(std::make_pair(runID, taskName), std::move(rt)); } return fut;