Unlocking unique lock to prevent one bad agent stalling the rest

This commit is contained in:
Ian Roddis
2022-02-11 13:06:20 -04:00
parent 6aab7be0a1
commit 443bc789cf

View File

@@ -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<std::mutex> lock(rtGuard_);
std::lock_guard<std::mutex> rtLock(rtGuard_);
runningTasks_.emplace(std::make_pair(runID, taskName), std::move(rt));
}
return fut;