See http://boinc.berkeley.edu/trac/wiki/MultiSize
The components of this include:
- DB changes:
add size_class to workunit and result
n_size_classes to app; >1 means multi-size
- size_regulator daemon program: change results states
from INACTIVE to UNSENT carefully
- size_census program; writes quantile info in flat files
- transitioner: when creating results for multi-size apps,
set server state to INACTIVE
- sched shmem (feeder): read quantile info from flat files,
store in shared memory
- scheduler (score-based scheduling): for multi-size apps,
add component to score function for size class.
- show_shmem: show result size class
- make_work (and other callers of count_unsent_results()):
count both INACTIVE and UNSENT
- create_work: add --size_class cmdline option
Also:
- if get MySQL errors in upgrade, don't rewrite db_version
- prompt user for DB user/passwd if DB updates needed
- error out immediately if any DB update fails
Fixes#1169, #1170
- create_work: check for duplicate <file_info>s in input template
NOTE: the input template syntax is pretty clunky
svn path=/trunk/boinc/; revision=24969
It wasn't copying html/ops/db_update.php,
so it wasn't doing necessary DB updates.
Fixed this by always copying html/ops/*.
Even with this fix, there is a problem when using
the --server_only or --web_only options of upgrade:
if any DB updates are done, they may affect the
server code that's not being updated, resulting in crashes.
I added a warning message in this case,
recommending that a full upgrade be done.
svn path=/trunk/boinc/; revision=22200
Got rid of auth_ops_cmdline() (not needed).
auth_ops() is now called in util_ops.inc;
every script in html/ops/ must include util_ops.inc.
Note: for existing projects, the admin web interface
will now show "access denied".
Projects must think about what access control policy they want,
and specify it in project.inc
svn path=/trunk/boinc/; revision=19053
(after user confirmation).
This is called from "upgrade", and can also be run by itself.
NOTE: this mechanism will handle all DB updates going forward.
Older updates must be done the old way (edit and run db_update.php)
- Web: let teams determine whether they're accepting new members
svn path=/trunk/boinc/; revision=16160