Commit Graph

279 Commits

Author SHA1 Message Date
David Anderson 27e05a3da9 - server: some stuff to prepare for distributed storage
- don't create result records for uploads and downloads.
        Just create a msg_to_client record.
    - the scheduler handles file-transfer results specially;
        it makes a vector of them, then calls a project-supplied function
        handle_file_xfer_results()
    - change the interface and implementation of put_file and get_file
- client write project sched priority in GUI RPC replies,
    but not to the state file


svn path=/trunk/boinc/; revision=23857
2011-07-19 20:52:41 +00:00
David Anderson e4f104f917 - Change the way update_versions works, and reimplement it in PHP.
Problems with the old version:
    - Lots of info encoded in file and directory names: messy kludge
    - The convention that directory name == main program name
        created a bad situation when using the wrapper:
        if you made a new version of your application,
        you were forced make a new version of the wrapper
        just so it could have a different name.
    The new version is described here:
    http://boinc.berkeley.edu/trac/wiki/AppVersionNew
- Remove some Python code that suppored the old version
- client: some fixes to dir_size() that might fox
    a buffer overflow when using symbolic links


svn path=/trunk/boinc/; revision=23525
2011-05-12 04:11:40 +00:00
David Anderson 5b3c9e872b - "upgrade" script: copy sched/fcgi if it exists
svn path=/trunk/boinc/; revision=23357
2011-04-08 19:36:26 +00:00
David Anderson 07982df97a - update_versions: if FILE.file_ref_info contains <open_name>,
use that instead of physical name.
    This lets you have logical names with slashes

svn path=/trunk/boinc/; revision=23042
2011-02-16 04:57:31 +00:00
David Anderson 4dbe2c8fdf - new script sched/transitioner_catchup.php: transitions all WUs
that need it, then exits.
    For big projects coming up after an outage, run this before bin/start
    to minimize startup overload
- tweaks to PHP libraries to allow them to be used
    by scripts anywhere in the dir hierarchy


svn path=/trunk/boinc/; revision=22959
2011-01-29 06:28:10 +00:00
David Anderson 58b345fce6 - server: disable upload certificates by default.
These increase server load and it's not clear they're needed.
        

svn path=/trunk/boinc/; revision=22934
2011-01-24 19:39:50 +00:00
David Anderson 9d35970994 - server scripts (e.g. update_versions):
compute MD5 checksums be reading files in pieces instead
    of reading whole file into memory.  From Tolu Aina

svn path=/trunk/boinc/; revision=22743
2010-11-23 22:16:24 +00:00
David Anderson 723c764963 - server: add scripts to submit jobs for demo application
svn path=/trunk/boinc/; revision=22676
2010-11-10 22:54:56 +00:00
David Anderson c0612ab77f - make_project: with --test_app, copy all the executables
(for many platforms) from samples/example_app/bin
- make_project: change name of example app from uppercase to example_app.
- update_versions: allow version numbers to not have decimal points
- sample work generator: make app name and template files
    command-line options;
    default to "example_app", "example_app_in.xml", "example_app_out.xml"

svn path=/trunk/boinc/; revision=22667
2010-11-10 00:10:32 +00:00
David Anderson d384377743 - client: fix harmless compile warning
- make_project: don't try to install non-existent file

svn path=/trunk/boinc/; revision=22656
2010-11-09 05:00:49 +00:00
David Anderson 8aa29bec33 - validator: fix another bug with --credit_from_wu
- make_project, update scripts: don't quit it user_profiles
    already exists


svn path=/trunk/boinc/; revision=22630
2010-11-05 17:15:27 +00:00
David Anderson 7fcd20e020 - make_project, upgrade scripts:
create a symbolic link from html/user/user_profile to html/user_profile
    (needed to make profiles work)

svn path=/trunk/boinc/; revision=22622
2010-11-03 22:42:01 +00:00
David Anderson e97a9177d3 - python DB layer: fields with values None or ''
where being omitted from query strings.
    This is incorrect.
    For example, suppose you have an app version with nonempty plan_class,
    then you try to add a version with no plan class.
    The query would omit the "and plan_class = ''"
    so it would match the existing app version and not add a new version.
    Reported by Rytis.
    Hopefully this won't break anything.


svn path=/trunk/boinc/; revision=22616
2010-11-03 18:25:24 +00:00
David Anderson d44e403fbf - admin: fix bug with "upgrade --server_only".
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
2010-08-11 20:08:13 +00:00
David Anderson fb851311e0 - server: various changes;
see http://boinc.berkeley.edu/trac/wiki/CreditNew

    Projects will need to update DB and recompile all back-end programs.

    Summary:
    - new way of computing credit
    - "reliable host" mechanism is per app version
    - "host punishment" mechanism is per app version
    - adjustment of wu.rsc_fpops_est provides the
        equivalent of per app version DCF
    - max jobs in progress is now per app
    - max jobs per RPC is now per app

    TODO:
    - reliable mechanism:
        - populate and use host_app_version.error_rate
        - populate host_app_version.turnaround
    - host punishment:
        - populate host_app_version.max_jobs_per_day
        - populate host_app_version.n_jobs_today
        - use app.max_jobs_per_day_init
    - job limits:
        - use app.max_jobs_in_progress, max_gpu_jobs_in_progress
        - use app.max_jobs_per_rpc
    - adjust wu.rsc_fpops_est
    - remove old credit stuff
        fpops_cumulative, credit_multiplier
        credit computation in scheduler

- AVERAGE class: use the Knuth algorithm (Wikipedia)


svn path=/trunk/boinc/; revision=21021
2010-03-29 22:28:20 +00:00
David Anderson c0ad0f3745 - update_versions: if file is already in download dir,
and is the same, don't copy (it might not be writeable)
- client: change "result" to "task" in user-visible messages

svn path=/trunk/boinc/; revision=20785
2010-03-03 23:52:20 +00:00
David Anderson c27f2486e7 - fix python deprecation warning (from Jeremy Cowles)
svn path=/trunk/boinc/; revision=20122
2010-01-11 06:10:17 +00:00
David Anderson 437087a053 - upgrade: add --server_only option
(updates scheduler and back-end programs, but not web code)
    fixes #968

svn path=/trunk/boinc/; revision=20052
2009-12-31 02:37:16 +00:00
David Anderson e1bdfc0ee8 - web: change the way project news is stored.
Old: in a flat file (html/project/project_news.inc)
    New: in a forum (called "News" by default)
    The script html/ops/news_convert.php copies news from
    old to new format.
    You'll also need to edit your index.php and use
    "show_news(0, 5)" to show news.
- web: added a "message of the day" mechanism.
    Edit html/user/motd.php to show a message.
    This will be shown as the first news item,
    but it's not archived (i.e., it's not a forum post)


svn path=/trunk/boinc/; revision=19949
2009-12-16 22:35:08 +00:00
David Anderson 3f9f76f5c2 - add "appmgr" script for managing apps and versions (from Gabor Gombas)
svn path=/trunk/boinc/; revision=18938
2009-08-28 18:25:26 +00:00
David Anderson d14527f79d - update_versions: if app version files already exist in download dir,
make sure they're the same (i.e., enforce file immutability).
    TODO: do this for input files too
- client: check return values from CUDA device detection functions

svn path=/trunk/boinc/; revision=18903
2009-08-24 19:08:05 +00:00
David Anderson 25cd6f456d - make_project and upgrade: copy file management programs to proj/bin/
svn path=/trunk/boinc/; revision=18885
2009-08-20 18:10:42 +00:00
David Anderson c653852718 svn path=/trunk/boinc/; revision=18840 2009-08-13 18:22:40 +00:00
David Anderson a1d18e7e11 svn path=/trunk/boinc/; revision=18839 2009-08-13 18:20:03 +00:00
David Anderson 69e363df2f svn path=/trunk/boinc/; revision=18838 2009-08-13 18:18:32 +00:00
David Anderson 6b36764b65 - start: don't print "XML parse error" message if run_state file
doesn't exist (e.g. when start new project)


svn path=/trunk/boinc/; revision=18837
2009-08-13 18:17:09 +00:00
David Anderson a0c483f5e6 - make_project/upgrade: install pymw assimilator
- make pymw_assimilator.py executable


svn path=/trunk/boinc/; revision=18481
2009-06-22 22:20:35 +00:00
David Anderson 817153c96b - setup script: remove old pymw stuff
svn path=/trunk/boinc/; revision=18455
2009-06-18 22:48:11 +00:00
David Anderson 577f14ff49 - python scripts: fix bugs, restore latest version of "start"
svn path=/trunk/boinc/; revision=18424
2009-06-15 23:24:15 +00:00
David Anderson ac14777bae - forget to add file
svn path=/trunk/boinc/; revision=18384
2009-06-11 23:06:02 +00:00
David Anderson b7406ef57c - server: make the python code honor BOINC_PROJECT_PATH.
It is now possible to use the same set of tools for multiple
    projects by setting BOINC_PROJECT_PATH.
    From Gabor Gombas.

svn path=/trunk/boinc/; revision=18376
2009-06-11 16:06:25 +00:00
David Anderson 6bc55040f0 - server: Use distutils for installing the python modules,
and move files not part of the BOINC package from py/Boinc to py/
    From Gabor Gombas.

svn path=/trunk/boinc/; revision=18375
2009-06-11 16:01:36 +00:00
David Anderson 4cf6b7793c - server: move python modules from PROJECT/bin to PROJECT/py/Boinc.
make_project now generates PROJECT/bin/boinc_path_config.py
    to ensure that the interpreter will find the modules.
    From Gabor Gombas.

svn path=/trunk/boinc/; revision=18374
2009-06-11 15:38:48 +00:00
David Anderson 144c106e19 - make_project and upgrade: add --srcdir option so you
can run these commands from any directory
    (mostly from Gabor Gombas; added a fix for svnversion)

svn path=/trunk/boinc/; revision=18356
2009-06-10 22:38:33 +00:00
David Anderson cb0c57c590 - python DB code: add clear cache method, and fix equality crash
(from Jeremy Cowles)

svn path=/trunk/boinc/; revision=18258
2009-06-02 04:07:53 +00:00
David Anderson da217e4c59 - upgrade: don't crash if file copy fails
- db_update.php: select database (not clear if this ever worked)
- translation: fix bug if have both BOINC and project translation

svn path=/trunk/boinc/; revision=18141
2009-05-18 04:18:47 +00:00
David Anderson 9dc7ecb22a - make_project: get rid of verbosity-level stuff
and fancy overwriting of stdout lines


svn path=/trunk/boinc/; revision=17736
2009-04-06 18:27:02 +00:00
David Anderson 4dfc96033c - web: clean out translation directories before updating
(to get rid of bad translation files)


svn path=/trunk/boinc/; revision=17656
2009-03-24 23:08:09 +00:00
David Anderson f6b1ae85b9 - certificate stuff
svn path=/trunk/boinc/; revision=15957
2008-09-04 12:17:58 +00:00
David Anderson 95fdff2fd3 - server: add assimilator for Python Master/Worker system,
and change setup script to copy its files

svn path=/trunk/boinc/; revision=15702
2008-07-28 22:56:39 +00:00
David Anderson 283a785c0f - back-end stuff to support Python MW (from Adam Kornafeld)
Not complete.

svn path=/trunk/boinc/; revision=15679
2008-07-25 22:13:41 +00:00
Adam Kornafeld 1787e0eb14 Make project installs pymw specific parts
svn path=/workspaces/kadam/; revision=15660
2008-07-22 22:29:29 +00:00
Adam Kornafeld a0ff4d5276 Edit project.xml programmatically
svn path=/workspaces/kadam/; revision=15657
2008-07-22 20:57:25 +00:00
Adam Kornafeld d252499e0f Moving pymw setup script to tools directory
svn path=/workspaces/kadam/; revision=15655
2008-07-22 17:45:35 +00:00
Adam Kornafeld a6ba196dfc Added setup script for pymw
svn path=/workspaces/kadam/; revision=15654
2008-07-22 17:23:56 +00:00
David Anderson ba752a17e7 - make_project: allow account creation initially.
Otherwise it's another nit-picky little step
    in the project "quick start" process.

svn path=/trunk/boinc/; revision=15382
2008-06-10 21:19:09 +00:00
David Anderson 4387e4491b - Fix emacs mode line in Makefile.am's
svn path=/trunk/boinc/; revision=15375
2008-06-08 22:18:52 +00:00
David Anderson 0e03df254b - Back end: add adaptive validation feature
(DB update required)
- Fixed typo in Eric's 5/28 checkin

svn path=/trunk/boinc/; revision=15357
2008-06-04 23:04:12 +00:00
David Anderson 812d033008 svn path=/trunk/boinc/; revision=15229 2008-05-15 22:10:29 +00:00
David Anderson d2a02a5184 - client and server: in coprocessor records, change "name" to "type"
to avoid confusion with "name" field of CUDA.
    This is a bug fix - please port.
- start script: don't error out if run_state.xml file is empty
    (which happens if project runs out of disk space)

svn path=/trunk/boinc/; revision=15168
2008-05-09 20:54:52 +00:00