diff --git a/checkin_notes b/checkin_notes index eaacc94f9b..d029dfa759 100644 --- a/checkin_notes +++ b/checkin_notes @@ -2405,3 +2405,14 @@ David 27 Feb 2009 client/ rr_sim.cpp work_fetch.cpp + +David 1 Mar 2009 + - client: if we're going to do a scheduler RPC for reasons + other than work fetch (e.g., user request, project request) + temporarily clear resource backoffs while deciding + whether to request work. + The backoffs are there only to delay RPCs, + and we're going an RPC anyway. + + client/ + work_fetch.cpp diff --git a/client/work_fetch.cpp b/client/work_fetch.cpp index d246c4556d..a17404374d 100644 --- a/client/work_fetch.cpp +++ b/client/work_fetch.cpp @@ -349,9 +349,17 @@ void WORK_FETCH::compute_work_request(PROJECT* p) { return; } - // see if this is the project we'd ask for work anyway + // See if this is the project we'd ask for work anyway. + // Temporarily clear resource backoffs, + // since we're going to contact this project in any case. // + double cpu_save = p->cpu_pwf.backoff_time; + double cuda_save = p->cuda_pwf.backoff_time; + p->cpu_pwf.backoff_time = 0; + p->cuda_pwf.backoff_time = 0; PROJECT* pbest = choose_project(); + p->cpu_pwf.backoff_time = cpu_save; + p->cuda_pwf.backoff_time = cuda_save; if (p == pbest) return; // if not, don't request any work diff --git a/doc/boinc_news.php b/doc/boinc_news.php index 09926fbfb5..e1dde2ec8f 100644 --- a/doc/boinc_news.php +++ b/doc/boinc_news.php @@ -1,6 +1,9 @@ TThrottle,