Skip to content

Commit 588b8e8

Browse files
author
Theresa Pollinger
committed
manager: fail if not enough tasks in runfirst()
1 parent 9f4923f commit 588b8e8

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

src/manager/ProcessManager.cpp

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
#include "manager/ProcessManager.hpp"
22
#include <algorithm>
33
#include <iostream>
4+
#include <stdexcept>
5+
#include <string>
46

57
#include <boost/asio.hpp>
68

@@ -26,7 +28,12 @@ bool ProcessManager::runfirst(bool doInitDSGUs) {
2628
// sort instances in decreasing order
2729
sortTasks();
2830

29-
assert(tasks_.size() >= pgroups_.size());
31+
if (tasks_.size() < pgroups_.size()) {
32+
throw std::runtime_error(
33+
"runfirst requires at least as many tasks as process groups, but got " +
34+
std::to_string(tasks_.size()) + " tasks for " + std::to_string(pgroups_.size()) +
35+
" groups");
36+
}
3037

3138
for (size_t i = 0; i < tasks_.size(); ++i) {
3239
// wait for available process group

0 commit comments

Comments
 (0)