Hi devs My first post -so thanks for making boinc, it really works well!
Apologies for the long post, the formatting should be fixed format. - appreciate any comments or thoughts. BR Mike Summary: Suggestion for a RPC for reporting invalid (and other status) tasks This proposal started from a thread posted on the boinc Q&P User Forum here http://boinc.berkeley.edu/dev/forum_thread.php?id=10539&postid=64913#64913 Current issues: --------------- + Users only see invalid results if they *regularly* visit *all* their project websites and check their tasks + Task are often purged from the user visible data so no long term record is visible + Invalid tasks waste more host and server resources (power, bandwidth etc) on average than error tasks (they take longer) + Project administrators may not have time to advise users about hosts which deliver bad results + The boinc manager program(s) currently report nicely on historical RAC values but not so well on task reliability and host utilization. + RAC values are slow to respond to changes (by design) + There is an RPC for getting *pending* tasks (project/pending.php) documented here https://boinc.berkeley.edu/trac/wiki/WebRpc + There is no RPC for getting *errors* or *invalid* tasks Existing php which is similar: results.php ------------------------------ The existing project/results.php (and the only mechanism available for users to see invalid tasks) accepts parameters hostid=<host_id> or userid=<user_id> # must match authentication offset=<number_from_start> # default 0 show_names=<0|1> # state=4 # 4 is invalid, 0 default matches all states appid=0 # 0 default matches all apps it then displays a maximum of 20 tasks one per row in a HTML table, and the user has to follow links to the next page of 20 results. Example http://einstein.phys.uwm.edu/results.php?userid=<user_id>&offset=0&show_names=1&state=4&appid=0 Shows my first page of E@H invalids Suggestion: ---------- Create a similar RPC to pending.php called say resultsRPC.php which would accept the parameters (except offset above) like results.php, then deliver an XML file like pending.php RPC with task data Benefit: ------- The resultsRPC could be used in a number of ways in the future Future versions of boinc or the boincmgr could use it to + put an alert notice if a new error detected recently + log the event, like the job_<project>.txt files + put a last week scorecard showing host/user efficiency + report user/host health statistics (like RAC/Credit statistics tab) Users could write scripts using for alerts on errors and invalids, helpful for "farmers" with headless hosts to get a daily email with new invalids and errors from the farm. Project Managers could also use this RPC across users to monitor app performance trends after changes. Detail ------ Select result records based on parameters state, appid, hostid, userid (like results.php) and these new optional parameters max_results=<maximum_number_results> # default 1000, the project # should be able to set an upper limit sent_end_time=<epoch_date_value> # default to "now" sent_time_interval=<number_of_seconds> # default to 2419200 (28 days) to filter results returned. Then produce (like pending.php) an XML file with one or two tables based on optional formatting parameters format=xml # placeholder defaults to xml report_results=<0|1> # default 1 = report results table report_totals=<0|1> # default 1 = report totals table -XML file----------------------------------- <results_table> ... data values matching the results.php web page output, any time/date output in epoch seconds. </results_table> <results_total_table> ... which simply counts or sums the column, where that makes sense. (eg. count_of_results, Runtime, CPUtime, Claimedcredit, Grantedcredit) </results_total_table> ---------------------------------------------- -- BR Mike _______________________________________________ boinc_dev mailing list [email protected] http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev To unsubscribe, visit the above URL and (near bottom of page) enter your email address.
