From d51444dc23b35a525958becca056e5d1348e9581 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Mart=C3=ADn?= Date: Thu, 31 Jan 2013 15:40:10 +0100 Subject: [PATCH] Feature #846: Minor fix for req. syntax errors --- src/scheduler/src/sched/Scheduler.cc | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/scheduler/src/sched/Scheduler.cc b/src/scheduler/src/sched/Scheduler.cc index 2bb45abbde..c9f16afe4d 100644 --- a/src/scheduler/src/sched/Scheduler.cc +++ b/src/scheduler/src/sched/Scheduler.cc @@ -340,6 +340,7 @@ void Scheduler::match() int gid; int n_hosts; int n_matched; + bool req_error; string reqs; @@ -367,6 +368,7 @@ void Scheduler::match() n_hosts = 0; n_matched = 0; + req_error = false; for (h_it=hosts.begin(), matched=false; h_it != hosts.end(); h_it++) { @@ -422,6 +424,7 @@ void Scheduler::match() ostringstream error_msg; matched = false; + req_error = true; error_msg << "Error evaluating REQUIREMENTS expression: '" << reqs << "', error: " << error; @@ -432,6 +435,8 @@ void Scheduler::match() vm->log(error_msg.str()); free(error); + + break; } } else @@ -475,7 +480,7 @@ void Scheduler::match() } } - if (n_hosts == 0) + if (n_hosts == 0 && !req_error) { if (n_matched == 0) {