From f6771bac8ca346a1ca810101fdf85382119a6845 Mon Sep 17 00:00:00 2001 From: David Anderson Date: Tue, 26 Aug 2003 18:33:21 +0000 Subject: [PATCH] docs svn path=/trunk/boinc/; revision=2196 --- doc/{account.html => account.php} | 12 +- doc/backend_functions.php | 17 +-- doc/backend_state.php | 216 +++++++++++++++++++--------- doc/{client.html => client.php} | 16 ++- doc/{contact.html => contact.php} | 8 +- doc/create_project.php | 6 +- doc/{credit.html => credit.php} | 14 +- doc/{db_dump.html => db_dump.php} | 15 +- doc/file_xfer_policy.html | 4 - doc/flow.php | 32 ----- doc/index.html | 14 +- doc/{old_news.html => old_news.php} | 7 + doc/optimize.html | 18 --- doc/participate.php | 15 +- doc/platform.php | 2 +- doc/{prefs.html => prefs.php} | 14 +- doc/result.php | 110 +++++++------- doc/result_file_delete.fig | 121 ---------------- doc/result_file_delete.png | Bin 4551 -> 0 bytes doc/result_process.html | 2 - doc/result_server_state.fig | 113 --------------- doc/result_server_state.png | Bin 3926 -> 0 bytes doc/result_validate.fig | 113 --------------- doc/result_validate.png | Bin 4092 -> 0 bytes doc/security.php | 9 +- doc/{startup.html => startup.php} | 10 +- doc/{teams.html => teams.php} | 9 +- doc/tools_security.html | 23 --- doc/version.html | 1 - doc/work.php | 4 +- doc/work_buffer.php | 24 ++++ doc/wu_assimilate.fig | 112 --------------- doc/wu_assimilate.png | Bin 2220 -> 0 bytes doc/wu_error_mask.fig | 113 --------------- doc/wu_error_mask.png | Bin 3324 -> 0 bytes doc/wu_file_delete.fig | 112 --------------- doc/wu_file_delete.png | Bin 3747 -> 0 bytes doc/wu_need_validate.fig | 106 -------------- doc/wu_need_validate.png | Bin 1894 -> 0 bytes doc/wu_timeout.fig | 108 -------------- doc/wu_timeout.png | Bin 2263 -> 0 bytes sched/validate.C | 10 +- sched/validate_util.C | 39 +++-- sched/validate_util.h | 20 +-- todo | 2 + tools/create_work.C | 1 - 46 files changed, 368 insertions(+), 1204 deletions(-) rename doc/{account.html => account.php} (89%) rename doc/{client.html => client.php} (96%) rename doc/{contact.html => contact.php} (70%) rename doc/{credit.html => credit.php} (89%) rename doc/{db_dump.html => db_dump.php} (95%) delete mode 100644 doc/file_xfer_policy.html delete mode 100644 doc/flow.php rename doc/{old_news.html => old_news.php} (95%) delete mode 100644 doc/optimize.html rename doc/{prefs.html => prefs.php} (92%) delete mode 100644 doc/result_file_delete.fig delete mode 100644 doc/result_file_delete.png delete mode 100644 doc/result_process.html delete mode 100644 doc/result_server_state.fig delete mode 100644 doc/result_server_state.png delete mode 100644 doc/result_validate.fig delete mode 100644 doc/result_validate.png rename doc/{startup.html => startup.php} (91%) rename doc/{teams.html => teams.php} (93%) delete mode 100644 doc/tools_security.html delete mode 100644 doc/version.html create mode 100644 doc/work_buffer.php delete mode 100644 doc/wu_assimilate.fig delete mode 100644 doc/wu_assimilate.png delete mode 100644 doc/wu_error_mask.fig delete mode 100644 doc/wu_error_mask.png delete mode 100644 doc/wu_file_delete.fig delete mode 100644 doc/wu_file_delete.png delete mode 100644 doc/wu_need_validate.fig delete mode 100644 doc/wu_need_validate.png delete mode 100644 doc/wu_timeout.fig delete mode 100644 doc/wu_timeout.png diff --git a/doc/account.html b/doc/account.php similarity index 89% rename from doc/account.html rename to doc/account.php index e165c84bfd..c507913ec1 100644 --- a/doc/account.html +++ b/doc/account.php @@ -1,6 +1,7 @@ -Joining a project - -

Joining a project

+ You can join a BOINC project as follows: @@ -9,7 +10,7 @@ You can join a BOINC project as follows: This involves filling out a form with @@ -47,3 +48,6 @@ from an existing host to the new host. The BOINC client resides in a BOINC home directory. If hosts share a network file system, each host must have its own BOINC home directory. +"; +page_tail(); +?> diff --git a/doc/backend_functions.php b/doc/backend_functions.php index 5972dc2b95..3f08cf8f45 100644 --- a/doc/backend_functions.php +++ b/doc/backend_functions.php @@ -24,19 +24,20 @@ This can result from tampering or hardware failures. This problem can be addressed by redundant computing In this approach, each workunit is processed at least twice. -The project back end waits until a minimum number of results have been returned,then compares the results and decides which are considered correct. +The project back end waits until a minimum number of results have been returned, +then compares the results and decides which are considered correct. The notion of equality of results, and the policy for deciding which are correct, are project-specific.

  • Grant credit. - Some users will attempt to get undeserved credit by falsifying their CPU - metrics or CPU times. Each project and application can have its own - credit-granting algorithm, for example granting the minimum or the mean of - the median of all claimed credits (during validation time). The granted - credit is assigned to all correct results. This ensures that as long as a - reasonable majority of participants don't falsify credit, almost all credit - accounting will be correct. +Some users will attempt to get undeserved credit by falsifying their CPU +metrics or CPU times. Each project and application can have its own +credit-granting algorithm, for example granting the minimum or the mean of +the median of all claimed credits (during validation time). The granted +credit is assigned to all correct results. This ensures that as long as a +reasonable majority of participants don't falsify credit, almost all credit +accounting will be correct.

  • Assimilate results.

    diff --git a/doc/backend_state.php b/doc/backend_state.php index 9878e1851a..cfe702544b 100644 --- a/doc/backend_state.php +++ b/doc/backend_state.php @@ -1,65 +1,97 @@ -The processing of workunits and results involves several independent activities. -To keep track of these activities, -workunit and result database records have several parameters and state fields, -and their processing can be expressed in terms of state machines. +Workunit and result database records have several state fields, +and their processing can be described in terms of state transitions. -


    -

    Workunit.delay_bound

    -An upper bound for the interval between when a scheduler -sends an instance of this WU to a host -when the host sends the completion message. -It should be several times the execution time on an average host. -If it's exceeded, the server 'gives up' on the result -and may delete its input files. -If the result is returned later, -it will still be validated and credited. +

    +Several workunits parameters are described +here. -

    Workunit.canonical_resultid

    -The ID of the canonical result for this workunit, or zero. +Other state fields include +"; +list_start(); +list_item( + "canonical_resultid", + "The ID of the canonical result for this workunit, or zero." +); -

    Workunit.timeout_check_time

    -The next time to check for timeouts on this WU -(e.g. to give up on results and create new ones). -
    -
    -
    - +list_item("transition_time", + "The next time to check for state transitions for this WU. + + " +); +list_item("file_delete_state", + "Indicates whether input files should be deleted. + + " +); -

    Workunit.file_delete_state

    -Indicates whether input files should be deleted. -
    -
    -
    +list_item("assimilate_state", + "Indicates whether the workunit should be assimilated. + + " +); -

    Workunit.assimilate_state

    -Indicates whether the workunit should be assimilated. -
    -
    -
    +list_item("need_validate", + "Indicates that the workunit has a result that needs validation. + + " +); -

    Workunit.need_validate

    -Indicates that the workunit has a result that needs validation. -
    -
    -
    - -

    Workunit.error_mask

    -A bit mask for error conditions. -
    -
    -
    +list_item("error_mask", + "A bit mask for error conditions. + + " +); +list_end(); +echo " Workunit invariants: +"; -
    +list_start(); +list_item("report_deadline", + "Give up on result (and possibly delete input files) + if don't get reply by this time. + + " +); +list_item("server_state", + "Values: UNSENT, IN_PROGRESS, OVER + + " +); +list_item("outcome", + "Values: SUCCESS, COULDNT_SEND, CLIENT_ERROR, NO_REPLY, DIDNT_NEED. +
    Defined iff result.server_state=OVER + + " +); +list_item("client_state", + "Records the client state (upload, process, or download) + where an error occurred. + Defined if outcome is CLIENT_ERROR. + " +); -

    Result.report_deadline

    -give up on result (and possibly delete input files) -if don't get reply by this time. -

    -Assignment: when send result; now + WU.delay_bound +list_item("file_delete_state", + " +

    +"; +page_tail(); +?> diff --git a/doc/tools_security.html b/doc/tools_security.html deleted file mode 100644 index 3ab25ffa5f..0000000000 --- a/doc/tools_security.html +++ /dev/null @@ -1,23 +0,0 @@ -Security tools - -

    Security tools

    -

    -The program lib/crypt_prog can be used for several purposes: -
    -

    -
    crypt_prog -genkey n private_keyfile public_keyfile -
    -Create a key pair with n bits (always use 1024). -Write the keys in encoded ASCII form to the indicated files. -
    crypt_prog -sign file private_keyfile -
    -Create a digital signature for the given file. Write it in encoded -ASCII to stdout. -
    crypt_prog -verify file signature_file public_keyfile -
    -Verify a signature for the given file. -
    crypt_prog -test_crypt private_keyfile public_keyfile -
    -Perform an internal test, checking that encryption followed by -decryption works. -
    \ No newline at end of file diff --git a/doc/version.html b/doc/version.html deleted file mode 100644 index 118c074362..0000000000 --- a/doc/version.html +++ /dev/null @@ -1 +0,0 @@ -Delete this file \ No newline at end of file diff --git a/doc/work.php b/doc/work.php index f530233593..6987ca46fd 100644 --- a/doc/work.php +++ b/doc/work.php @@ -125,8 +125,8 @@ list_end(); echo "

    -The create_work utility program provides a -simplified interface for creating workunits. +BOINC provides a utility program and C function +for creating workunits. "; page_tail(); diff --git a/doc/work_buffer.php b/doc/work_buffer.php new file mode 100644 index 0000000000..c382d9e470 --- /dev/null +++ b/doc/work_buffer.php @@ -0,0 +1,24 @@ + +Each BOINC client +maintains an estimate of the amount of work remaining +(i.e. the time until one of its processors will be idle). +Each host also has two preferences: +the minimum work and the +maximum work +(these are part of your 'general preferences', discussed elsewhere). +

    +Normally the work remaining is between these two limits. +When the work remaining reaches minimum level, +the client contacts one or more scheduling servers, +and attempts to get enough work to exceed the maximum level. +

    +This scheme allows hosts that are sporadically connected +(because they're portable or have modem-based connections) +to avoid becoming idle due to lack of work. +"; +page_tail(); +?> diff --git a/doc/wu_assimilate.fig b/doc/wu_assimilate.fig deleted file mode 100644 index b03a2b21e0..0000000000 --- a/doc/wu_assimilate.fig +++ /dev/null @@ -1,112 +0,0 @@ -#FIG 3.2 -Landscape -Center -Inches -Letter -100.00 -Single --2 -1200 2 -0 32 #c7b696 -0 33 #effbff -0 34 #dfcba6 -0 35 #414141 -0 36 #868286 -0 37 #c7c3c7 -0 38 #e7e3e7 -0 39 #8e8e8e -0 40 #aeaaae -0 41 #515551 -0 42 #414141 -0 43 #868286 -0 44 #c7c3c7 -0 45 #868286 -0 46 #c7c3c7 -0 47 #e7e3e7 -0 48 #8e8e8e -0 49 #8e8e8e -0 50 #414141 -0 51 #868286 -0 52 #c7c3c7 -0 53 #e7e3e7 -0 54 #414141 -0 55 #868286 -0 56 #c7c3c7 -0 57 #e7e3e7 -0 58 #868286 -0 59 #c7c3c7 -0 60 #e7e3e7 -0 61 #c7b696 -0 62 #effbff -0 63 #dfcba6 -0 64 #c7b696 -0 65 #effbff -0 66 #dfcba6 -0 67 #aeaaae -0 68 #515551 -0 69 #8e8e8e -0 70 #414141 -0 71 #868286 -0 72 #c7c3c7 -0 73 #e7e3e7 -0 74 #414141 -0 75 #868286 -0 76 #c7c3c7 -0 77 #e7e3e7 -0 78 #868286 -0 79 #c7c3c7 -0 80 #e7e3e7 -0 81 #414141 -0 82 #868286 -0 83 #c7c3c7 -0 84 #414141 -0 85 #c7c3c7 -0 86 #e7e3e7 -0 87 #414141 -0 88 #868286 -0 89 #c7c3c7 -0 90 #8e8e8e -0 91 #414141 -0 92 #868286 -0 93 #c7c3c7 -0 94 #e7e3e7 -0 95 #414141 -0 96 #868286 -0 97 #c7c3c7 -0 98 #e7e3e7 -0 99 #bebebe -0 100 #515151 -0 101 #000049 -0 102 #797979 -0 103 #303430 -0 104 #414541 -0 105 #414141 -0 106 #868286 -0 107 #c7c3c7 -0 108 #e7e3e7 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 0 0 1.00 60.00 120.00 - 4950 1725 4950 2475 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 0 0 1.00 60.00 120.00 - 4950 2925 4950 3750 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 4575 2475 5325 2475 5325 2925 4575 2925 4575 2475 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 4500 3750 5400 3750 5400 4200 4500 4200 4500 3750 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 4575 5175 5400 5175 5400 5625 4575 5625 4575 5175 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 4500 3750 5400 3750 5400 4200 4500 4200 4500 3750 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 4575 5175 5400 5175 5400 5625 4575 5625 4575 5175 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 0 0 1.00 60.00 120.00 - 4950 4200 4950 5175 -4 0 0 50 0 16 12 0.0000 4 135 435 5100 2100 initial\001 -4 0 0 50 0 16 12 0.0000 4 135 330 4800 2775 INIT\001 -4 0 0 50 0 16 12 0.0000 4 135 645 4650 4050 READY\001 -4 0 0 50 0 16 12 0.0000 4 135 540 4725 5475 DONE\001 -4 0 0 50 0 16 12 0.0000 4 135 1395 5100 4650 assimilator: done\001 -4 0 0 50 0 16 12 0.0000 4 135 2625 5100 3525 validate: found canonical result\001 -4 0 0 50 0 16 12 0.0000 4 165 2400 5100 3225 timeout_check: WU has error\001 diff --git a/doc/wu_assimilate.png b/doc/wu_assimilate.png deleted file mode 100644 index e53ec98f990bdb6a5809dd85e7071394660ed2e0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2220 zcma)8X*3(?8cvO>HCm(7v7{BH4LX9LwbgB+wve$_TgpWxmb8|{r9?1esZx}XN`x9> zsfJp{Qp#;>so29sh^A^Q(~7ldN-p=$y=M+{?vL-h-+A62@A5s*bG{@yl!cVIyf^>= zkg~EgbJ&X<0N{v-sL6LO<*m{uM?Sh0A;B%p1} zV+yzBVtCozI|TA;Z58kh;)kI}Ln|vn>IKco7h1+LI!PGiwCN{PM7k=XF<5ciKR}ne z;OWC543Sz>CfO#*s0`uZ>%VVzB%e62m4kakz`H;V;a--Ip%Qd#gf2H7rcW|H5i2rG zN{6YFoYH;GZN&_{5mr%2`_S};F*x3O(@1BsPIQULt`s-lo8!rAN2dROs3*TMvaAavt7udJ9lwBCaI$?wr8qGBN z9O1yUF*s^Y4)n^{PxGWm!Cw{Yq0MtFV;e=>Tc*dA#s>(9L!T$r8gjJqjy}|(H;&)Z zSxApYcbCbn3S}bX>K3FmEi0-8*KYI$JNYv!wO@v#++?npe$Ho!J{)G}KjpHKoO&N) zmD8pZ0w0b?IWEnzOcAEV7_a%B(%ujm$YeaC#Y=uii`R`WD$m(z&f0v7g9R{gAeNp% z>e+7^gv+$Zi`a&Nuw@_KRr zFvN1&WaX_9NMHW8+s&fX4GvCYXTU0Ltj-sT4#OZG`tX)v$+k)x- zI-rmJ?cDK~J(X&KJEB^hlM`Hs+qK_NCid!``TW_qISl8g;vmc`hx*0$_?Q0K7`IvG z^zn39Yw@=#O0gU+N|QA6GuPS_zkK3AMdTiZv;W9WX5I^hKKJ%Ji#EI~Mn$?SkzP$E zYxi#U=-a4X^*<^9<+XJ|n?+Bwc_%0N=8Gx&QnZ=rr*HmXbKki2y#8hd&?Rzkn9cbb80Q zg9dT&pQ7*CbkUu^AW<%DJxe3axmnD+iLPPqxhA=G&B%|d5EXurrQg%=w2{bFtp}!` zGcgfMn$G0;M9uPqrMX0wfXG#E%duV@%iBY(b(PLh?81y3S_y%ZFc@lU`UMoJ1+@?J=6NX{rFEN*q2f8 zjKKQbSxJ4r-Q=Dv=@TWrNS;ntxq?iP;psm;yK7D44bxAT)zF-&A$2oyTvl`6VD*kW zHSA{t=x!IVkx(VUlVVa7nOI+z$;_u3-Dsl2bTEAQgUgi;=-AKa6s@UwEh2*`KCJqt66&KlzMMd^AMPQ?EE@Z z&9k&)GpdBmBvv%9<;p6Llx$xPXu?YQi-fS{$%b({74tSU@=m7P>(Md7#qQH)Uyqe- zQ9Ke?Z>Q>6fxX_Gsj@xBy8mVrOez?M+2SIAqNRgl1TxB;;+8Fw^N=^|v~|A+X81Md rx)*pbr90(t4tYait6s-!HcjJ>3(G2`0rmHO8UU-SD6D=es_c`}}=a1j@xn9@n^}Sx#?{|H_@9*b#>kJsQ zdE?HF3JMCFPo1CrCT+tn5fSHjh&@QY3IRF!wb-D!`P=xK=Rke&drSWCj zdLVISTd~L&d%^RVt&4iTXRYVc`Kki_%Pr4~%IQ8?B`to1DA&$%=|%0UnEXc&m$Tsg znWFL+9v1zFIZKwMFR|JB3joVRC}y(8tJtq=dM<_Ni#Ge1sk*PVAh#&52WIB7hRljr z)2?II2u*=8L|NLq)`>i~$Aq5Xb7&^V`7AED z-W29_uWmT4;Q^(-jJ{Q|dw7SR8EN5B+cZaw??@Kzd&{NLpa5hrRH zvrB}EB8-4=GP1lFb;B;)kds!9uatDEQO=6n`p|cvok=f(T`QtWo}hfC9(t1S@SjD@ zt8aC|Uqox+`ChOQt&Kl+?x&TC3-g?AJ$%P8+JH@Q-03!Q{&*qCY(%*V zM@JO)%mb{-kw{Rn;^i+QgG?@7y}1wv`*>kKvobYAQCNB{2%*@x5B+}x zgX14rrVS3zjKnF}D@1HbWYhSZI1*%^%yKU`jkxBG?qCtEFhv&cBB);4x_leK2SS#3 ztj+wH;luE9A>5Kdbf6GUgueQ{N{<$*A}aO4pg9^ZB! zZc$mnw$^aq%APY{$%7v;8wpn7qAtzpQSc@$?LH&-ZE7hZ^GDfD^(21v8y%3Ba4q3Z z@KW-L#q%>Q0f@|@+66|Tu~OnsdO*h~=K5r${}Fwo7xP02Be?2Nn@fF>^`8y(Bxsg( zR+c;bOHPe|!-!=%DEBLkKMkY~UZ#L-PFf2lXWL+e8!c%LU>2)h2#MpJ zVkx%9%TfkxP=A?c;~ajkiP!8$u4|^pHQXHwq$p+VZ}#j83~&j~J|KBno=K*;sPWPf z(%cLby9$S9dvDX&`Xg&hl4p=Pp=G)uIsipCMmJUFKedcf>>Zj5?b3Q{U2u2ohh}*5 zhU95uWBTTQ$%HW9Gsn+Nw0La<&mw%?NQON+DPI0A4g#S7C2J|@Gk<~)lXKxE(6*a{bOVQ;x^w6LH2GCA}O?{kiEhV*fU&?Cd@4=oEF7{xfw7oFZ z=lf*GTretX2h0$tp?Gj#RTWHp+jCG}(IA_>JeWp}Q7SP;P3#ftkph4l?tX^_%e|e<+*~3h0`1tH9G|GcX$lCLDO2$t|s~7nb3Kzy( zLj|wbv}M*c7jAdJUDwbmpwc9WSkS#KY}D6LD)8r!^FejLP=LH$P60PapzzS&_YJse$<3bXX9p9!Y!Y9|L`Qj!v!l=w>WlwaLh13`y822AmTBFB|= z9|Fy454$&i9s;CrYwGF~eZYozIP%hOfH;^i9Z`BU&ES~}uTr$!R@U-H3TDgEq=6qB z-Sy$NQo-`qAK9jhsZsH?;521}U8X&q+$)NH{{A(2n4GeuMd?&-mIu8sN%4N140RP- z@%l9&j8jnTy36DWqVWn}c;j^Yx-7Wwrkhrh%4r>Ke`zIo&0LTg{xmMpX;k!&$(l2N ztk~agiEXJJt9V};qMrI8dfRU;`CDiH+XdW0;EN-@KELAs86v+Q=^I(tbrg+BOD11D z8wKUu_Ws2mlz?8C;ezZzWcZ?Uwr4BUpNjF%YA2ZdAPaCc;mt;c*InOQy^UmtvVT|* z#_-+W%s)q8)+h>LME$vw7#f-DY_6R5ARQL>ll8RP#Mp-Q%^WwX$1vq7Lz z{~0eyRkzHhR+;mZ-Maed+7CbFWow}PaQtU&_UcA4y(}eg6?X3XGpH>?kc8ZCe&cNS zF{5fg-Vv4tXPOV`7giwNZ-#6M@;Gz6Lc$O&(L9!OphrFOmf(Q#)Vt430~{U47*)~u ztkZKr6Ax%k4GtztheC&`e3uv5cHs|r6}-FPYQL;pMS%Epig1{1+A@*Uma{1XZ=N1s zqfTtF?t2T-Jdz8|Gmt%pqV)koK^yMz>Y59LCk9hb`=WQa<-Ei%^4?BwWl34ixRy^q zkI)ib-u{^gB*ab-dG$Sc6)2KYw7J-a${_FMl#kP|a(+mW4Eyfrg+n928+ndR1Z@ql zC@nBWJ^Ra3Aj%ugciS}ofT0C(!3}?+OTH84T%>674?9O^MDm)qaAUR3e<91AgD_bs z-GYyLAceYS97cY*I$r2{H)Y80Gwg2b5x{ocEcX)jwXAmkGLzO%CbEs?3s_kZMpEYI zdLR@)sd<(iD@h<%6aL`mm*m6n6FoC zS4Q70qNO*OE5^i!`X_D6$$uGy>ulUy7)>F(8cJO#;JNixsmn;UH=Q4pmiBD6KI~39 z;PslEL~|k(kvhIUzk{pju?YA&>VFXSDlq97;NXxGF{PG&*35F;h@xn7f@h$@k0oIP zwC*o{&Jr3v7;SXGf&IZL;RexMJ!dG~Mz0BBAZz(Q587 zjLL)`o&{;sh}!`XmXfFLF+`!fw$$JkU1J&-NNJJmhxYO*Ka>^D)qJvkp2({rn{ex6 zMzW*j$Rfk)8aAkO&kxb|TpUQi9@zTVCejrb!zi{;2v|6fXBMTqTV0tX|8r3|bpmW# IblfNI-|txKlmGw# diff --git a/doc/wu_file_delete.fig b/doc/wu_file_delete.fig deleted file mode 100644 index 88883e9521..0000000000 --- a/doc/wu_file_delete.fig +++ /dev/null @@ -1,112 +0,0 @@ -#FIG 3.2 -Landscape -Center -Inches -Letter -100.00 -Single --2 -1200 2 -0 32 #c7b696 -0 33 #effbff -0 34 #dfcba6 -0 35 #414141 -0 36 #868286 -0 37 #c7c3c7 -0 38 #e7e3e7 -0 39 #8e8e8e -0 40 #aeaaae -0 41 #515551 -0 42 #414141 -0 43 #868286 -0 44 #c7c3c7 -0 45 #868286 -0 46 #c7c3c7 -0 47 #e7e3e7 -0 48 #8e8e8e -0 49 #8e8e8e -0 50 #414141 -0 51 #868286 -0 52 #c7c3c7 -0 53 #e7e3e7 -0 54 #414141 -0 55 #868286 -0 56 #c7c3c7 -0 57 #e7e3e7 -0 58 #868286 -0 59 #c7c3c7 -0 60 #e7e3e7 -0 61 #c7b696 -0 62 #effbff -0 63 #dfcba6 -0 64 #c7b696 -0 65 #effbff -0 66 #dfcba6 -0 67 #aeaaae -0 68 #515551 -0 69 #8e8e8e -0 70 #414141 -0 71 #868286 -0 72 #c7c3c7 -0 73 #e7e3e7 -0 74 #414141 -0 75 #868286 -0 76 #c7c3c7 -0 77 #e7e3e7 -0 78 #868286 -0 79 #c7c3c7 -0 80 #e7e3e7 -0 81 #414141 -0 82 #868286 -0 83 #c7c3c7 -0 84 #414141 -0 85 #c7c3c7 -0 86 #e7e3e7 -0 87 #414141 -0 88 #868286 -0 89 #c7c3c7 -0 90 #8e8e8e -0 91 #414141 -0 92 #868286 -0 93 #c7c3c7 -0 94 #e7e3e7 -0 95 #414141 -0 96 #868286 -0 97 #c7c3c7 -0 98 #e7e3e7 -0 99 #bebebe -0 100 #515151 -0 101 #000049 -0 102 #797979 -0 103 #303430 -0 104 #414541 -0 105 #414141 -0 106 #868286 -0 107 #c7c3c7 -0 108 #e7e3e7 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 0 0 1.00 60.00 120.00 - 4950 1725 4950 2475 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 0 0 1.00 60.00 120.00 - 4950 2925 4950 3750 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 4575 2475 5325 2475 5325 2925 4575 2925 4575 2475 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 4500 3750 5400 3750 5400 4200 4500 4200 4500 3750 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 4575 5175 5400 5175 5400 5625 4575 5625 4575 5175 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 4500 3750 5400 3750 5400 4200 4500 4200 4500 3750 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 4575 5175 5400 5175 5400 5625 4575 5625 4575 5175 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 0 0 1.00 60.00 120.00 - 4950 4200 4950 5175 -4 0 0 50 0 16 12 0.0000 4 135 435 5100 2100 initial\001 -4 0 0 50 0 16 12 0.0000 4 135 330 4800 2775 INIT\001 -4 0 0 50 0 16 12 0.0000 4 135 645 4650 4050 READY\001 -4 0 0 50 0 16 12 0.0000 4 135 540 4725 5475 DONE\001 -4 0 0 50 0 16 12 0.0000 4 165 6960 5100 3150 timeout_check: all results have server_state=OVER and wu.assimilate_state=DONE\001 -4 0 0 50 0 16 12 0.0000 4 180 6690 5100 3375 assimilate: all results have server_state=OVER (and wu.assimilate_state=DONE)\001 -4 0 0 50 0 16 12 0.0000 4 165 2550 2250 4725 file_deleter: tried to delete files\001 diff --git a/doc/wu_file_delete.png b/doc/wu_file_delete.png deleted file mode 100644 index 7a977eb1f67294db042d60c9a189e17d284bd337..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3747 zcmb7{c~p|=9>-rZwZ^5Hax2$qrnGWtQ(Q{3+{)A(voyuX(n%%2z*NM2%7#+%&P}_5 zXzG~df{Gg|Dw$F_KxvBPhG?3iBBCO0T$(@bxz4%w-0mOmdCz&y^Sd^ZoUL zhl}brd%ghxK=rJv<4*vvB^vYce!ZsR zg-I`g^esVo_1(pIO*t=Ln+c~h@WHc*T$g0tah6CPcs-q4qSG4Z-i?af1!(VO${C)F zPy;4^MFOs#1o=~Fo-WX}YXW#gv{Fi3cx4R~8vU;=bOrnSf%Y0wbi?o^rRcj>6ZJ7f zQ0|r6Hql1_^PRF+4avTEDyaMTN%}zhMac;k>lqPeo*)ifqwSZ+7)3Cxr#OrBgKRtr zQ-4DZu``0HP-xXk39y~$Ci>a2$f0)<$@h_FhOgzA`iYQdOk830Vh@UsbUlc!9@RhZy;%9(zA9=25K(6b%KP&f) zrh!Tfz$7jA4~X1G#88b^_FMb3G}azN^aO1)sLi( ztAQpTN5+_~HkVbFjOon&UA_0Jik~G{L|a@6(0|_II*;)a2-*0k8JHflb-t=or|EL# zD7FLCNH6FiuhBYQ#*b&YPz20 z)2AUJMZ18Cy(tngWW=Ct&76}{()cIut(8o{n3L22 zKBK)bSd>AZ+IGMrl^v; G5PQj<3U@&{N_`@o|o z;0~JtIjpFft@SzB^VlBx1HIDl_2uY%*|VMhKZhv+jkY;e7-zf|`c%*C0{4{Ak**>;r+5PBp&|>z7kO?Tah- zmrC{2tAB=Tz-=5jjanXK1qh6*s4slOt0knn;gMk>-wCZen^U6uA-pX~jy|58a?5xx zr4Em_=pfl&aO!@YovxCRl^=%db*=NotStl&ET8QwXeq}whWkhQTnXjqo*)wvaN_f@p$391f9l7Z$8~!RH5-Hsh13Bi-{~Nw@$>W~$(mdDV zeh`jMogGLDA&-{D&i@oj`h@|jD8Vu)bqyy|1`Bqt;oYdSI?YON@YC2Z!0ZOfV?TAI zbHe}SYG3DPc_r=m_rWN&M|W{A<^F9L<6cH2Wt7afi_hD=BZ_^hOKuqWSrtiC^H(}) zoj)w5mZ75zC*$0ObFc=C)(%VVZ*(q&C%CuR4DFpZrIzzzC+4CFQNLvd2#!*&tlA0h zSk*qpn&*jO>%!_7(36$%gI8-uJK#GiB-!4UOxp&>oVSb?C1o6(h1j*fKWQNQOeLeA ztn#rb<=X=$QJPom`v^Er4HDk7>mkz`ChFU!znyt2RuoIchxLdRltZ>f4L*HtR^j`i zE{s}h0l%sNsshOeoahO^c42&ckLsoGhFK-eoqYvlz1{~Znt>!QFRyn`$RGTnKOV#G zME6tb6{}+|9EbaBE_8wE5K?(VHLdN1*;whpsh&wwUwCDc=!k4~pi|Mvpo7LwB}-I4 zupkF!y$AnT5$+lBd!$78qUV#k;5%A!#FHL4W-%5eS}*oUj!x?+(Pn)NvYj4$=3weD zLuGPo>vXIq_+_Wb#p9B9A75{TVZ#j$gso|p@~;R;VA~S*K95pf#W)2*c3WWXA?;q*wnSp(%&k2KF&ZEOZN5jl?6%Zt|`X%OxF?o-L2>t z1f*xltPgr;a3jN^Z@Cx^*BD*Y{M1tK87|Y&WZmVMF$1y(Mwh0`ch0;V6F- zyZDvce=Kk36toOt>9No3B4)()0H|Lk_rR>;L$^F|x%I)bt)B^5>U8J0OR=*tusCDO z9UoS1Lk7k(UhwB*OEg=u7$OW554CKBT@zl^)26b;(_oog_)UKH8{5Q_u5F6_OWLmQ z8pas6(MHZc#A4>qj+Nq3{pDVHL|mTgY$?O6vILu#ADEy$eUQO5&$J0IA@2J$Azpqc zEKa#P`k4!hYyGTi*ncX%Lkk$NPnTSnYquKi1r4*N`B6lEn^UGDyeN6^tdIu`l)4_NXoKm>3Swm2EU8F$OIG(Mv z43oap4^bLwc`O*_JMcr15mQe5Z(wg>%|lJ3HEm z#8U?8)htppm3!0|9(YEMi+41*%LnI_^$a7FGt(aEkx&;%tu*+jcJszIthl^NR`s>? zwD%J9J&KkJi+$WEKels;c%@v9{&>l*N~;d>4C}U+EbBQl|grJ3^lnJzthjwB2M!K(ZMVsZ(Dt z;e#BMH&iIt>|3fSVQP==<6g$$O+fMg5@YkKQE(4b4)@dQJ7O+=B+3jXaMsDgvHUb7`Jd`iU6lX; diff --git a/doc/wu_need_validate.fig b/doc/wu_need_validate.fig deleted file mode 100644 index d97d749d3f..0000000000 --- a/doc/wu_need_validate.fig +++ /dev/null @@ -1,106 +0,0 @@ -#FIG 3.2 -Landscape -Center -Inches -Letter -100.00 -Single --2 -1200 2 -0 32 #c7b696 -0 33 #effbff -0 34 #dfcba6 -0 35 #414141 -0 36 #868286 -0 37 #c7c3c7 -0 38 #e7e3e7 -0 39 #8e8e8e -0 40 #aeaaae -0 41 #515551 -0 42 #414141 -0 43 #868286 -0 44 #c7c3c7 -0 45 #868286 -0 46 #c7c3c7 -0 47 #e7e3e7 -0 48 #8e8e8e -0 49 #8e8e8e -0 50 #414141 -0 51 #868286 -0 52 #c7c3c7 -0 53 #e7e3e7 -0 54 #414141 -0 55 #868286 -0 56 #c7c3c7 -0 57 #e7e3e7 -0 58 #868286 -0 59 #c7c3c7 -0 60 #e7e3e7 -0 61 #c7b696 -0 62 #effbff -0 63 #dfcba6 -0 64 #c7b696 -0 65 #effbff -0 66 #dfcba6 -0 67 #aeaaae -0 68 #515551 -0 69 #8e8e8e -0 70 #414141 -0 71 #868286 -0 72 #c7c3c7 -0 73 #e7e3e7 -0 74 #414141 -0 75 #868286 -0 76 #c7c3c7 -0 77 #e7e3e7 -0 78 #868286 -0 79 #c7c3c7 -0 80 #e7e3e7 -0 81 #414141 -0 82 #868286 -0 83 #c7c3c7 -0 84 #414141 -0 85 #c7c3c7 -0 86 #e7e3e7 -0 87 #414141 -0 88 #868286 -0 89 #c7c3c7 -0 90 #8e8e8e -0 91 #414141 -0 92 #868286 -0 93 #c7c3c7 -0 94 #e7e3e7 -0 95 #414141 -0 96 #868286 -0 97 #c7c3c7 -0 98 #e7e3e7 -0 99 #bebebe -0 100 #515151 -0 101 #000049 -0 102 #797979 -0 103 #303430 -0 104 #414541 -0 105 #414141 -0 106 #868286 -0 107 #c7c3c7 -0 108 #e7e3e7 -6 4500 4050 5400 4500 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 4500 4050 5400 4050 5400 4500 4500 4500 4500 4050 -4 0 0 50 0 16 12 0.0000 4 135 465 4650 4350 TRUE\001 --6 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 0 0 1.00 60.00 120.00 - 4950 1725 4950 2475 -2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 - 4575 2475 5325 2475 5325 2925 4575 2925 4575 2475 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2 - 0 0 1.00 60.00 120.00 - 4800 2925 4800 4050 -2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 0 1 2 - 0 0 1.00 60.00 120.00 - 5175 2925 5175 4050 -4 0 0 50 0 16 12 0.0000 4 135 435 5100 2100 initial\001 -4 0 0 50 0 16 12 0.0000 4 135 600 4650 2775 FALSE\001 -4 0 0 50 0 16 12 0.0000 4 180 3660 975 3525 scheduler: got reply with client_state DONE\001 -4 0 0 50 0 16 12 0.0000 4 180 2010 5400 3525 validate: done checking\001 diff --git a/doc/wu_need_validate.png b/doc/wu_need_validate.png deleted file mode 100644 index b8abb3972d840122233a0aa286d7340cfd86b615..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1894 zcmb7FdpHwn7#}5+iONyra&(kZNX_L)RHV{YTFPSX*O*~*o6D#~ghy(~rPHZanwi|$ zT*A~LoZMz+b6M2PT#|`hI_o*l>GY4DbN=|g=X-v??|t6yeZTkpy|>Oo?0_59HUaxOi+-aL*7o!SzOh)-5J%G%gX5r#5Ifb&3FcUpB z)MEJ{bXc!9#lk%U&lQNJn%N7ZBz=JFKsb{`Xs(gBNl;1w{H!E(TwD5v^?JEPIVEXj z?e#j=a%&JX{Za0oqDul!YEeU!he{&QOW%xG`ZP#Z{$}Wwp0I{SdV%dls7HWo=uZkGY9nS{5fpe8?sp^;~w5wQ75*~UH_zEuImn{zC+AnUujptPO4<9h2mV9i4LAu*(u0;gFzqhqo) zWW*h5jzm*zb+d=4qS9%Z)J|Ud=y@7G3{xA2t0jw3;04Y}7F^7I+WTBTQ)zS9M};QH z3dW~Mbgwh+g#g#PdW&-tPD}5s$)SGWpJ{7NC%Fer9vGyB@=Qjk3L4n~AAq#Ai&$sS;Wrme{1=&DsK5V_mQ_pKsNV*uF| zeAIbtX7`eFU&FSps!6l%ON}OoM9<09W?=S2=jL?`k+)IIhnk*3b=km9b4SAhVlz%W zk25On$(s05KFN--Z(2pVROP?S8D^wa;pf-Br#mZ;|M~LCO zBg~&pCoxdJIeeToDmJ9_^PqR@c4cU`$}KolT@?L3m@8{Jb#%c5S7r+*JmoW3f}sc1 zmrEXyFI0yz=)I|`P_jCr_!*zG{C4BveI~>K{q$%90`73d^5&-L;3qa!ow>N6rrU>H|RhbWQc$Mb7mB zJ`NrvpDk{sIg0Z$Al%`@^}Y@db=Wym7=mt)1BuR>D|ymjdUT=sHWSw|TFU%PRwoWU zw>%O=SqhSAZ?v#@R@d`^WW>n1?t3C7;p&x>2G8)kWTz8c20yCEtEEDh3I>XS%u?TT0I7}I_y zLR*j=I&Wnx=}_foHxgg?1gO<@z3Rog%VA>&k}6GIEc5wbP`4)w0yl_xg+Rzm7tO`>?goHI9XLSjP$lB9Un%rhTWmSK;`9B48?X!^HdU`2oTf ztzpCY2n&c)&8*aaQrI6hj#A3V+s~*5_NFL_K>yR2Sr!sGsl^N}i%8s-#P5_l3|gvr zfs5V*;XTH}coYl#S6y=ruMaT~NEuDsduVM}wa_H}{DwW=vD-aggp53{UGj119ZC&U zN^ybhn!?ojZ|kPHxyjyGTx)%B)|Tb2=2n4C>;2gv4c>3Mj#P&Fo( zOUyNHwZi6^QHrMA57rr&2qC}~#irtxIs}CuspnU+2+lQLw|07*m(3dbn87n9_gYuA Z_8+SmbS+aCNMW=&30)|g@{ zjPtCV!mvhMQY-f*5G)7~QnGQIQo$u7MeNZZ@0>Yjrq}!9-us<<&v)+c{Lc5?@BSEs z@H770;&T81V0_5mCj{yRFqH6>(adRBl>tJJN5un{j_ZFck8wv2Kc0RUl&J7DsM zk>NKCpm#ph+K>!dvt4l7y35?;EL{JL$v+-G+9Plq@Ucb9>zz#6VBN^c_NJ+TO#SUSKq(WN4UCjMn#|$5Tk{a`s z#E9m-(!`0NdsGB=9?7?-F+BQ9+KGnnLA&1ugzZ(iyM2n$OBEqllQsvheS>RgxgV|U zqh-%6!58ocM@%a&bLLO+fm>&n;QIHwe8>|^@-}lww|Sd+Xjdu1oTS)529Xp#IIQE#U1Yk(|IRx@JppuZ z&0qUwl(S*B>=t6OPvmD`B^s2uiP_vlmDG(|qD}_mJ0_#Ir3h_Q<8n)4^^C|<6-Rl2NH%x;@}aaCPUnuj5J3)-==0M-w|4fhr{o~_lmRLX7f z;`J*9PZhG{E0GFQ9-8wM-72EYBL?q!6iPKHzbWms1Ee+DD`vOGm0c~m79N91FJCZC zOc!VIuCnk;xpL8#*UM?HHbQwtKejh+Au_VA!2&s`%GVZs-Ca9=x#t`c*@mIH4Q?(Nmkt?SR&Jpd zE6_6qQO^|e>hcKpj3ZOe)BdZ)O} z&~m@*7+hNC>l=}{PJ!ZI$wan9_F(@OKkiuGn}pT5+elYVF6kG8HBY~Gx^gx%A6mA{ z?8QL_0eV~y?adHtpY1j>$%FHXA-I|0H)5gWxDfT`wpI=?I(Dw%m+J2z@DC&^oMN@uWJMvQT7QYKEF zIZ)%DjHKImNSM$^;(OEF(y;_3p>qkV4uFT#oQt{W-V9C7`JT9|;9H6X(K$@zrSk24 zdQo6L+hFcmCKY!#XO62u1TNZ4je91!!~QBuX1dVHJ+GIKprwz`VT;_i$3Tbe*`Ol( zA-wOTpzgO1e;X}AR@6mwHX#Zjq{sa3+! zN_KaFw0Jmv8A5vHR=&ld`=amLq}KM{vV9>F@_V$0%uRIupLLviL~BobVHBJFHXcl| zS?)f`y_528IX+F5emHiOY0YCrp)GG$+TB=IqV9%EGmUzefhx^Ve1s!#+L@}F=KF#Q zXK8}|FaDUe5`ZVh`nP^Dc^xp)`{Vx^M}OD)KL?pApEK{p(~nkKlHX=~-rP)rwH-EhZKN)fQ>z+o)#pl4=~iq8KEIK4Ig;teQI}Og(JMm7&#IS zD*r@s;@*GtYZz@$>oRFZS^=q}M+B75?ln1`8Eu72{PW`3;0D@qmwXxr=6vRsvK9ZR z79Rnqubh3V`bOlIglC4fT*5k58F#GUyM=!`l_ diff --git a/sched/validate.C b/sched/validate.C index 989525bd48..266d37cd7b 100644 --- a/sched/validate.C +++ b/sched/validate.C @@ -116,13 +116,9 @@ void handle_wu(DB_WORKUNIT& wu) { } // scan this WU's results, and check the unchecked ones + // TODO: do we have an index on these fields? + // maybe better just to enum on workunitid // - // sprintf(buf, "where workunitid=%d", wu.id); - // while (!result.enumerate(buf)) { - // if (result.validate_state == VALIDATE_STATE_INIT - // && result.server_state == RESULT_SERVER_STATE_OVER - // && result.outcome == RESULT_OUTCOME_SUCCESS - // ) { sprintf(buf, "where workunitid=%d and validate_state=%d and server_state=%d and outcome=%d", wu.id, VALIDATE_STATE_INIT, RESULT_SERVER_STATE_OVER, RESULT_OUTCOME_SUCCESS ); @@ -192,6 +188,8 @@ void handle_wu(DB_WORKUNIT& wu) { ++log_messages; // sprintf(buf, "where workunitid=%d", wu.id); + // TODO: do we have an index on these fields? + // maybe better to enum on workunitid // while (!result.enumerate(buf)) { // if (result.server_state == RESULT_SERVER_STATE_OVER // && result.outcome == RESULT_OUTCOME_SUCCESS diff --git a/sched/validate_util.C b/sched/validate_util.C index 78565b0600..c9e420e3d8 100644 --- a/sched/validate_util.C +++ b/sched/validate_util.C @@ -46,8 +46,7 @@ int get_output_file_path(RESULT const& result, string& path) { // - if N==2, give min credit // - if N>2, toss out min and max, give average of rest // -double median_mean_credit(vector const& results) -{ +double median_mean_credit(vector const& results) { typedef vector::const_iterator it; it it_low = results.end(), it_high; @@ -55,12 +54,9 @@ double median_mean_credit(vector const& results) size_t n_valid = 0; - for (it i = results.begin(); i != results.end(); ++i) - { + for (it i = results.begin(); i != results.end(); ++i) { if (i->validate_state != VALIDATE_STATE_VALID) continue; - ++n_valid; - if (it_low == results.end()) { it_low = it_high = i; credit_low = credit_high = i->claimed_credit; @@ -88,8 +84,7 @@ double median_mean_credit(vector const& results) } else { double sum = 0; - for (it i = results.begin(); i != results.end(); ++i) - { + for (it i = results.begin(); i != results.end(); ++i) { if (i == it_low) continue; if (i == it_high) continue; if (i->validate_state != VALIDATE_STATE_VALID) continue; @@ -116,11 +111,12 @@ double median_mean_credit(vector const& results) // // see validate_test.C example usage. // -int generic_check_set_majority(vector& results, int& canonicalid, double& credit, - init_result_f init_result_f, - check_pair_with_data_f check_pair_with_data_f, - cleanup_result_f cleanup_result_f) -{ +int generic_check_set_majority( + vector& results, int& canonicalid, double& credit, + init_result_f init_result_f, + check_pair_with_data_f check_pair_with_data_f, + cleanup_result_f cleanup_result_f +) { assert (!results.empty()); vector data; @@ -128,8 +124,7 @@ int generic_check_set_majority(vector& results, int& canonicalid, double data.resize(n); // 1. INITIALIZE DATA - for (i = 0; i != n; ++i) - { + for (i = 0; i != n; ++i) { if (init_result_f(results[i], data[i])) { log_messages.printf( SchedMessages::CRITICAL, @@ -140,8 +135,7 @@ int generic_check_set_majority(vector& results, int& canonicalid, double } // 2. COMPARE - for (i = 0; i != n; ++i) - { + for (i = 0; i != n; ++i) { vector matches; matches.resize(n); neq = 0; @@ -179,11 +173,12 @@ cleanup: return 0; } -int generic_check_pair(RESULT const& r1, RESULT const& r2, bool& match, - init_result_f init_result_f, - check_pair_with_data_f check_pair_with_data_f, - cleanup_result_f cleanup_result_f) -{ +int generic_check_pair( + RESULT const& r1, RESULT const& r2, bool& match, + init_result_f init_result_f, + check_pair_with_data_f check_pair_with_data_f, + cleanup_result_f cleanup_result_f +) { void* data1; void* data2; int retval; diff --git a/sched/validate_util.h b/sched/validate_util.h index 3a0c6204c8..50870594a4 100644 --- a/sched/validate_util.h +++ b/sched/validate_util.h @@ -31,13 +31,17 @@ typedef int (*check_pair_with_data_f)(RESULT const&, void*, RESULT const&, void* typedef int (*cleanup_result_f)(RESULT const&, void*); int get_output_file_path(RESULT const& result, string& path); double median_mean_credit(vector const& results); -int generic_check_set_majority(vector& results, int& canonicalid, double& credit, - init_result_f init_result_f, - check_pair_with_data_f check_pair_with_data_f, - cleanup_result_f cleanup_result_f); -int generic_check_pair(RESULT const& r1, RESULT const& r2, bool& match, - init_result_f init_result_f, - check_pair_with_data_f check_pair_with_data_f, - cleanup_result_f cleanup_result_f); +int generic_check_set_majority( + vector& results, int& canonicalid, double& credit, + init_result_f init_result_f, + check_pair_with_data_f check_pair_with_data_f, + cleanup_result_f cleanup_result_f +); +int generic_check_pair( + RESULT const& r1, RESULT const& r2, bool& match, + init_result_f init_result_f, + check_pair_with_data_f check_pair_with_data_f, + cleanup_result_f cleanup_result_f +); #endif diff --git a/todo b/todo index 99bcca23cb..80285a3ccf 100755 --- a/todo +++ b/todo @@ -1,5 +1,7 @@ DON'T ADD ANYTHING TO HERE. USE THE TASKBASE INSTEAD. +encrypt IDs in URLs (e.g. host) + Use GlobalMemoryStatusEx when possible on Windows Take p_ncpus into account when assigned work to a host File upload handler should check for disk full, diff --git a/tools/create_work.C b/tools/create_work.C index 8939d34be6..053a867795 100644 --- a/tools/create_work.C +++ b/tools/create_work.C @@ -170,7 +170,6 @@ int main(int argc, char** argv) { } wu.appid = app.id; - wu.transition_time = MAXINT; retval = read_key_file(keyfile, key); if (retval) {