mirror of https://github.com/BOINC/boinc.git
- scheduler: if we truncate the # of results accepted
(like we're doing in SETI@home) don't resend lost results since we don't know what they are svn path=/trunk/boinc/; revision=25733
This commit is contained in:
parent
7aafa2cc9a
commit
8d284f2b17
|
@ -4127,3 +4127,12 @@ David 3 June 2012
|
|||
html/inc/
|
||||
util.inc
|
||||
util_ops.inc
|
||||
|
||||
David 4 June 2012
|
||||
- scheduler: if we truncate the # of results accepted
|
||||
(like we're doing in SETI@home)
|
||||
don't resend lost results since we don't know what they are
|
||||
|
||||
sched/
|
||||
handle_request.cpp
|
||||
sched_types.cpp,h
|
||||
|
|
|
@ -1274,6 +1274,7 @@ void process_request(char* code_sign_key) {
|
|||
if (g_request->have_other_results_list) {
|
||||
if (ok_to_send_work
|
||||
&& (config.resend_lost_results || g_wreq->resend_lost_results)
|
||||
&& !g_request->results_truncated
|
||||
) {
|
||||
if (resend_lost_work()) {
|
||||
ok_to_send_work = false;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
// This file is part of BOINC.
|
||||
// http://boinc.berkeley.edu
|
||||
// Copyright (C) 2008 University of California
|
||||
// Copyright (C) 2012 University of California
|
||||
//
|
||||
// BOINC is free software; you can redistribute it and/or modify it
|
||||
// under the terms of the GNU Lesser General Public License
|
||||
|
@ -205,6 +205,7 @@ const char* SCHEDULER_REQUEST::parse(XML_PARSER& xp) {
|
|||
client_cap_plan_class = false;
|
||||
sandbox = -1;
|
||||
allow_multiple_clients = -1;
|
||||
results_truncated = false;
|
||||
|
||||
if (xp.get_tag()) {
|
||||
return "xp.get_tag() failed";
|
||||
|
@ -330,6 +331,7 @@ const char* SCHEDULER_REQUEST::parse(XML_PARSER& xp) {
|
|||
}
|
||||
#if 0 // enable if you need to limit CGI memory size
|
||||
if (results.size() >= 1024) {
|
||||
results_truncated = true;
|
||||
continue;
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -303,6 +303,10 @@ struct SCHEDULER_REQUEST {
|
|||
COPROCS coprocs;
|
||||
std::vector<SCHED_DB_RESULT> results;
|
||||
// completed results being reported
|
||||
bool results_truncated;
|
||||
// set if (to limit memory usage) we capped this size of "results"
|
||||
// In this case, don't resend lost results
|
||||
// since we don't know what was lost.
|
||||
std::vector<RESULT> file_xfer_results;
|
||||
std::vector<MSG_FROM_HOST_DESC> msgs_from_host;
|
||||
std::vector<FILE_INFO> file_infos;
|
||||
|
|
Loading…
Reference in New Issue