mirror of https://github.com/BOINC/boinc.git
- scheduler: do homogeneous app version check before rereading WU
as well as after. svn path=/trunk/boinc/; revision=25419
This commit is contained in:
parent
c229667415
commit
5c8cdc3957
|
@ -2600,3 +2600,10 @@ Charlie 12 Mar 2012
|
|||
samples/vboxwrapper/
|
||||
vboxwrapper.xcodeproj
|
||||
project.pbxproj
|
||||
|
||||
David 13 Mar 2012
|
||||
- scheduler: do homogeneous app version check before rereading WU
|
||||
as well as after.
|
||||
|
||||
sched/
|
||||
sched_send.cpp,h
|
||||
|
|
|
@ -727,7 +727,8 @@ int wu_is_infeasible_fast(
|
|||
}
|
||||
|
||||
// homogeneous redundancy: can't send if app uses HR and
|
||||
// 1) host is of unknown HR class
|
||||
// 1) host is of unknown HR class, or
|
||||
// 2) WU is already committed to different HR class
|
||||
//
|
||||
if (app_hr_type(app)) {
|
||||
if (hr_unknown_class(g_reply->host, app_hr_type(app))) {
|
||||
|
@ -750,6 +751,21 @@ int wu_is_infeasible_fast(
|
|||
}
|
||||
}
|
||||
|
||||
// homogeneous app version
|
||||
//
|
||||
if (app.homogeneous_app_version) {
|
||||
int avid = wu.app_version_id;
|
||||
if (avid && bav.avp->id != avid) {
|
||||
if (config.debug_send) {
|
||||
log_messages.printf(MSG_NORMAL,
|
||||
"[send] [HOST#%d] [WU#%d %s] failed homogeneous app version check: %d %d\n",
|
||||
g_reply->host.id, wu.id, wu.name, avid, bav.avp->id
|
||||
);
|
||||
}
|
||||
return INFEASIBLE_HAV;
|
||||
}
|
||||
}
|
||||
|
||||
if (config.one_result_per_user_per_wu || config.one_result_per_host_per_wu) {
|
||||
if (wu_already_in_reply(wu)) {
|
||||
return INFEASIBLE_DUP;
|
||||
|
|
|
@ -49,6 +49,7 @@ extern bool app_core_compatible(WORK_REQ& wreq, APP_VERSION& av);
|
|||
#define INFEASIBLE_BANDWIDTH 9
|
||||
#define INFEASIBLE_CUSTOM 10
|
||||
#define INFEASIBLE_USER_FILTER 11
|
||||
#define INFEASIBLE_HAV 12
|
||||
|
||||
extern int wu_is_infeasible_fast(
|
||||
WORKUNIT&,
|
||||
|
|
Loading…
Reference in New Issue