From 2e526a09564152fa70167bf59aca15bb6cfbe758 Mon Sep 17 00:00:00 2001 From: Jeff Cobb Date: Wed, 9 Nov 2011 20:24:48 +0000 Subject: [PATCH] server: more fixes to DB to handle unsigned result IDs svn path=/trunk/boinc/; revision=24564 --- checkin_notes | 13 ++++++++++++- lib/parse.cpp | 1 - sched/db_purge.cpp | 2 +- sched/feeder.cpp | 8 ++++---- sched/sched_assign.cpp | 2 +- sched/sched_shmem.cpp | 4 ++-- 6 files changed, 20 insertions(+), 10 deletions(-) diff --git a/checkin_notes b/checkin_notes index 2cc2deffe7..bb21c90b73 100644 --- a/checkin_notes +++ b/checkin_notes @@ -8300,8 +8300,19 @@ Rom 9 Nov 2011 clientscr/ screensaver_win.cpp -David 10 Nov 2011 +David 9 Nov 2011 - server: more fixes to DB to handle unsigned result IDs db/ boinc_db.cpp + +Jeff 9 Nov 2011 + - server: more fixes to DB to handle unsigned result IDs + + sched/ + feeder.cpp + sched_shmem.cpp + db_purge.cpp + sched_assign.cpp + lib/ + parse.cpp diff --git a/lib/parse.cpp b/lib/parse.cpp index 0328da628f..8c3f8a012f 100644 --- a/lib/parse.cpp +++ b/lib/parse.cpp @@ -63,7 +63,6 @@ using std::string; bool parse_bool(const char* buf, const char* tag, bool& result) { char tag2[256], tag3[256]; int x; - // quick check to reject most cases // if (!strstr(buf, tag)) { diff --git a/sched/db_purge.cpp b/sched/db_purge.cpp index 67b6550302..63dc60c9fb 100644 --- a/sched/db_purge.cpp +++ b/sched/db_purge.cpp @@ -371,7 +371,7 @@ int archive_wu(DB_WORKUNIT& wu) { " %.15e\n" " %.15e\n" " %d\n" - " %d\n" + " %u\n" " %.15e\n" " %d\n" " %d\n" diff --git a/sched/feeder.cpp b/sched/feeder.cpp index 8070042d06..67e84515ff 100644 --- a/sched/feeder.cpp +++ b/sched/feeder.cpp @@ -301,7 +301,7 @@ static bool get_job_from_db( if (!ssp->lookup_app(wi.wu.appid)) { #if 0 log_messages.printf(MSG_CRITICAL, - "result [RESULT#%d] has bad appid %d; clean up your DB!\n", + "result [RESULT#%u] has bad appid %d; clean up your DB!\n", wi.res_id, wi.wu.appid ); #endif @@ -326,7 +326,7 @@ static bool get_job_from_db( ncollisions++; collision = true; log_messages.printf(MSG_DEBUG, - "result [RESULT#%d] already in array\n", wi.res_id + "result [RESULT#%u] already in array\n", wi.res_id ); break; } @@ -340,7 +340,7 @@ static bool get_job_from_db( if (hrt) { if (!hr_info.accept(hrt, wi.wu.hr_class)) { log_messages.printf(MSG_DEBUG, - "rejecting [RESULT#%d] because HR class %d/%d over quota\n", + "rejecting [RESULT#%u] because HR class %d/%d over quota\n", wi.res_id, hrt, wi.wu.hr_class ); continue; @@ -459,7 +459,7 @@ static bool scan_work_array(vector &work_items) { ); if (found) { log_messages.printf(MSG_NORMAL, - "adding result [RESULT#%d] in slot %d\n", + "adding result [RESULT#%u] in slot %d\n", wi.res_id, i ); wu_result.resultid = wi.res_id; diff --git a/sched/sched_assign.cpp b/sched/sched_assign.cpp index caf0e233bf..a7a9b54751 100644 --- a/sched/sched_assign.cpp +++ b/sched/sched_assign.cpp @@ -96,7 +96,7 @@ static int send_assigned_job(ASSIGNMENT& asg) { if (!asg.multi && asg.target_type!=ASSIGN_NONE) { DB_ASSIGNMENT db_asg; db_asg.id = asg.id; - sprintf(buf, "resultid=%d", result_id); + sprintf(buf, "resultid=%u", result_id); retval = db_asg.update_field(buf); if (retval) { log_messages.printf(MSG_CRITICAL, diff --git a/sched/sched_shmem.cpp b/sched/sched_shmem.cpp index 25757a04c9..d67556f0ca 100644 --- a/sched/sched_shmem.cpp +++ b/sched/sched_shmem.cpp @@ -292,7 +292,7 @@ void SCHED_SHMEM::show(FILE* f) { WU_RESULT& wu_result = wu_results[i]; switch(wu_result.state) { case WR_STATE_PRESENT: - fprintf(f, "%4d: ap %d ic %d wu %d rs %d hr %d nr %d\n", + fprintf(f, "%4d: ap %d ic %d wu %d rs %u hr %d nr %d\n", i, wu_result.workunit.appid, wu_result.infeasible_count, wu_result.workunit.id, wu_result.resultid, wu_result.workunit.hr_class, wu_result.need_reliable @@ -302,7 +302,7 @@ void SCHED_SHMEM::show(FILE* f) { fprintf(f, "%4d: ---\n", i); break; default: - fprintf(f, "%4d: PID %d: result %d\n", i, wu_result.state, wu_result.resultid); + fprintf(f, "%4d: PID %d: result %u\n", i, wu_result.state, wu_result.resultid); } } }