*** empty log message ***

svn path=/trunk/boinc/; revision=11118
This commit is contained in:
David Anderson 2006-09-06 21:58:12 +00:00
parent 02bb061b6d
commit 6709910d1c
3 changed files with 19 additions and 2 deletions

View File

@ -9890,3 +9890,14 @@ David 6 Sept 2006
team_lookup.php
lib/
error_numbers.h
David 6 Sept 2006
- core client: scheduling bug fix:
the definitions of "nearly runnable" were slightly
different for project and result.
This could lead to a rare situation where rr_simulation()
would generate huge cpu shortfalls.
(from John McLeod)
client/
client_types.C,h

View File

@ -379,7 +379,7 @@ bool PROJECT::downloading() {
for (unsigned int i=0; i<gstate.results.size(); i++) {
RESULT* rp = gstate.results[i];
if (rp->project != this) continue;
if (rp->state == RESULT_FILES_DOWNLOADING) return true;
if (rp->downloading()) return true;
}
return false;
}
@ -1664,9 +1664,13 @@ bool RESULT::runnable() {
}
bool RESULT::nearly_runnable() {
return runnable() || downloading();
}
bool RESULT::downloading() {
if (suspended_via_gui) return false;
if (project->suspended_via_gui) return false;
if (computing_done()) return false;
if (state > RESULT_FILES_DOWNLOADING) return false;
return true;
}

View File

@ -470,6 +470,8 @@ struct RESULT {
bool nearly_runnable();
// downloading or downloaded,
// not finished, suspended, project not suspended
bool downloading();
// downloading, not downloaded, not suspended, project not suspended
// temporaries used in CLIENT_STATE::rr_misses_deadline():
double rrsim_cpu_left;
double rrsim_finish_delay;