diff --git a/checkin_notes b/checkin_notes index 0a4e6590d9..84408cf4b8 100755 --- a/checkin_notes +++ b/checkin_notes @@ -5611,3 +5611,10 @@ David 30 May 2007 html/user/ prefs_edit.php merge_by_name.php + +David 30 May 2007 + - scheduler: add debugging msg for HR reject + + sched/ + sched_hr.C,h + sched_array.C diff --git a/sched/sched_array.C b/sched/sched_array.C index 0138b4a90c..15029515a7 100644 --- a/sched/sched_array.C +++ b/sched/sched_array.C @@ -120,10 +120,11 @@ void scan_work_array( // don't send if host can't handle it // wu = wu_result.workunit; - if (wu_is_infeasible(wu, sreq, reply)) { + retval = wu_is_infeasible(wu, sreq, reply); + if (retval) { log_messages.printf( - SCHED_MSG_LOG::MSG_DEBUG, "[HOST#%d] [WU#%d %s] WU is infeasible\n", - reply.host.id, wu.id, wu.name + SCHED_MSG_LOG::MSG_DEBUG, "[HOST#%d] [WU#%d %s] WU is infeasible: %d\n", + reply.host.id, wu.id, wu.name, retval ); continue; } @@ -132,6 +133,11 @@ void scan_work_array( // if (config.homogeneous_redundancy || app->homogeneous_redundancy) { if (already_sent_to_different_platform_quick(sreq, wu)) { + log_messages.printf( + SCHED_MSG_LOG::MSG_DEBUG, + "[HOST#%d] [WU#%d %s] failed quick HR check: WU is class %d, host is class %d\n", + wu.hr_class, hr_class(sreq.host) + ); continue; } } diff --git a/sched/sched_hr.C b/sched/sched_hr.C index b25dd87019..344d80fd8d 100644 --- a/sched/sched_hr.C +++ b/sched/sched_hr.C @@ -130,6 +130,10 @@ inline int HR_CLASS(HOST& host) { return OS(host) + CPU(host); } +int hr_class(HOST& host) { + return HR_CLASS(host); +} + bool hr_unknown_platform(HOST& host) { if (OS(host) == noos) return true; if (CPU(host) == nocpu) return true; diff --git a/sched/sched_hr.h b/sched/sched_hr.h index 574dd19c93..13c8bbe9aa 100644 --- a/sched/sched_hr.h +++ b/sched/sched_hr.h @@ -26,3 +26,5 @@ extern bool already_sent_to_different_platform_careful( ); extern bool hr_unknown_platform(HOST&); + +extern int hr_class(HOST&);