Commit Graph

1489 Commits

Author SHA1 Message Date
David Anderson ebe3b090e8 - add a script "upgrade_db.php" that updates project DB structure
(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
2008-10-08 16:48:11 +00:00
David Anderson 56c203a9a2 - added a script (from Nicolas) to generate en.po
svn path=/trunk/boinc/; revision=16151
2008-10-07 20:24:16 +00:00
David Anderson 33ad1b3d40 - Added the above DB change to schema.sql
- Omit the "after" clause from update.
- Web: add missing arg; fixes #749
- server: more --help additions

svn path=/trunk/boinc/; revision=16136
2008-10-06 00:18:36 +00:00
David Anderson f17c0879de - changed some comments for Doxygen
svn path=/trunk/boinc/; revision=16130
2008-10-04 23:44:24 +00:00
David Anderson a31c5d9e98 - Manager: show resource requirements of all jobs, running or not
- Back-end programs: start adding --help option to all of them

svn path=/trunk/boinc/; revision=16121
2008-10-03 19:31:56 +00:00
David Anderson 49bb779fb0 - scheduler: add a \n after projects_files.xml, in case it doesn't have one
svn path=/trunk/boinc/; revision=16113
2008-10-02 19:16:09 +00:00
David Anderson 59184caaa9 - scheduler: FCGI: use mysql_ping() to check that DB connection
is still alive before handling a request.  If not, try to reconnect.
    This will hopefully make things work better if MySQL goes down and up
    when using FCGI.

svn path=/trunk/boinc/; revision=16112
2008-10-02 19:03:52 +00:00
David Anderson d973bcac15 - scheduler: move core_client_version from WORK_REQ to SCHEDULER_REQUEST;
WORK_REQ doesn't get initialized in all cases.

svn path=/trunk/boinc/; revision=16107
2008-10-01 22:07:35 +00:00
David Anderson 632587c3b4 - scheduler: enforce max_wus_to_end, daily_result_quota,
and max_wus_in_progress when using score-based scheduling

svn path=/trunk/boinc/; revision=16106
2008-10-01 20:58:28 +00:00
David Anderson bb9d546a02 - scheduler: add <no_vista_sandbox> option.
If set, don't send work to sandboxed Vista clients
    (e.g., because of CUDA issue)

svn path=/trunk/boinc/; revision=16105
2008-10-01 19:48:52 +00:00
David Anderson 57b92fb40a - scheduler: #ifdef'd tweaks for server simulator
svn path=/trunk/boinc/; revision=16097
2008-09-30 18:21:41 +00:00
David Anderson 98cfb8d3b0 - rename .C files to .cpp so that Doxygen will work
svn path=/trunk/boinc/; revision=16069
2008-09-26 18:20:24 +00:00
David Anderson 0f8f9f3dab - API: in boinc_exit(), release the lockfile only if
we're the main program (otherwise we didn't lock it in
    the first place, and a crash results).  From Artyom Sharov.
- scheduler: add support for the GCL simulator,
    which uses special versions of backend programs
    that use virtual time,
    and that wait for signals instead of sleep()ing.

    To compile:
        make clean
        configure CXXFLAGS="-DGCL_SIMULATOR"
        make

svn path=/trunk/boinc/; revision=16036
2008-09-22 17:52:41 +00:00
David Anderson 8248896bc9 - typo
svn path=/trunk/boinc/; revision=16017
2008-09-18 12:01:50 +00:00
David Anderson 4ad5249bf2 - scheduler: various bug fixes in score-based schedule;
get rid of no_darwin_6 option


svn path=/trunk/boinc/; revision=16015
2008-09-17 23:35:16 +00:00
David Anderson 750fe8795a - back end programs: optional BOINC_CONFIG_XML environment variable
specifies path of config file (default: ../config.xml)

svn path=/trunk/boinc/; revision=16011
2008-09-17 21:14:47 +00:00
Eric J. Korpela 9d91ac8428 Fix typo.
svn path=/trunk/boinc/; revision=16009
2008-09-17 17:20:02 +00:00
David Anderson 6379b2682b - feeder: fix bug from changset 15984 that changed "r" to "w",
causing the feeder to truncate hr_info.txt on startup


svn path=/trunk/boinc/; revision=16008
2008-09-17 15:59:14 +00:00
David Anderson fd3dbc1058 - client: ignore CUDA devices with major versions > 100
(apparently some report 9999)
- web: security changes: sanitize some params; escape some strings

svn path=/trunk/boinc/; revision=16005
2008-09-16 23:06:37 +00:00
Eric J. Korpela 40e243412d - Fixed fcgi builds to use an installed version of fcgi_stdio.h rather than
a modified boinc version.
    - Added new header "boinc_fcgi.h" to be used instead of "fcgi_stdio.h".
      This header defines I/O functions in the namespace FCGI rather than using
      redefined functions the way "fcgi_stdio.h" does.  This was causing a lot
      of headaches when both <cstdio> and "fcgi_stdio.h" was called.  Using
      overloaded functions fixes this problem, except when the only difference
      between functions is the return type (for example ::fopen() returns FILE*
      and FCGI::fopen() returns FCGI_FILE*).
    - Fixed some missing "#ifdef _WIN32" blocks in filesys.C



svn path=/trunk/boinc/; revision=15984
2008-09-09 19:10:42 +00:00
David Anderson cc7d507789 - DB interface: in update(), check that 1 row was updated
- API: in APP_INIT_DATA, enclose project preferences in tags
    so that it's legal XML
- scheduler: add <multiple_clients_per_host> option.
    Use this if your project runs on Condor or grids
    and (to use multicore machines) you're running
    multiple clients per host.
    This will skip the host lookup based on IP address.


svn path=/trunk/boinc/; revision=15954
2008-09-04 08:33:21 +00:00
David Anderson ca00559575 - client (Unix): don't assume that LD_LIBRARY_PATH is defined
svn path=/trunk/boinc/; revision=15944
2008-08-28 18:41:18 +00:00
David Anderson 1013cf02c5 - validator: add a global variable WORKUNIT* g_wup;
that points to the workunit being processed;
    you can use this in your init_result(), compare_result() etc.
    if you need it.

svn path=/trunk/boinc/; revision=15919
2008-08-21 20:58:32 +00:00
David Anderson 53ccd10f13 - scheduler: add <debug_resend> config option to enable messages
about job resending

svn path=/trunk/boinc/; revision=15889
2008-08-19 03:00:17 +00:00
David Anderson 6869242f75 - scheduler: fixed bug that caused spurious messages
saying "no work was available for the apps you requested"
    with locality scheduling (i.e. Einstein@home)
    even if the user hasn't select apps.

    Note: the logic for printing these messages won't work
    for matchmaker scheduling.

svn path=/trunk/boinc/; revision=15847
2008-08-14 22:06:51 +00:00
David Anderson 104655a358 - client and server: add "len" arg to xml_escape() and xml_unescape()
(prevent buffer overrun).
    Also remove 1024 char limit for team description in db_dump.

svn path=/trunk/boinc/; revision=15820
2008-08-13 17:27:13 +00:00
David Anderson 6337181571 - scheduler: don't send jobs for "hard apps" (weight==-1)
to hosts with total_credit=0
- client: add a buffer size check

svn path=/trunk/boinc/; revision=15809
2008-08-12 19:06:35 +00:00
David Anderson ee56ea3341 - validator: get_credit_from_wu() returns an error, rather than exiting,
if WU doesn't have <credit> element

svn path=/trunk/boinc/; revision=15777
2008-08-07 22:50:05 +00:00
David Anderson 896bdb2e23 - web: improve white.css, and make corresponding PHP changes
(mostly from Simek)
    fixes #716
- validator: tweak the way host error rate is computed,
    e.g. on error bump rate by .1 instead of .05

svn path=/trunk/boinc/; revision=15771
2008-08-07 20:43:52 +00:00
David Anderson b5b3fd43b7 - scheduler: make credit_multiplier stuff conditional on
<use_credit_multiplier> flag in config.xml

svn path=/trunk/boinc/; revision=15766
2008-08-06 23:30:22 +00:00
David Anderson 91ca306e80 - scheduler: fix bug that caused jobs to be sent to clients
using anonymous platform
    even if they don't have the necessary app version.
    Also, send an explanatory message in this case.
    fixes #713


svn path=/trunk/boinc/; revision=15765
2008-08-06 22:08:47 +00:00
David Anderson 9b671b8f10 - file_deleter: add -delete_antiques_now options
svn path=/trunk/boinc/; revision=15763
2008-08-06 20:31:48 +00:00
David Anderson 4f66bb4c95 - added copyright and license info to .C, .cpp, .h files
- scheduler: fix bug in adaptive replication:
    if send an unreplicated job to untrusted host,
    set both wu.target_nresults and wu.min_quorum to app.target_nresults.

svn path=/trunk/boinc/; revision=15762
2008-08-06 18:36:30 +00:00
David Anderson 1c139a5523 - XML parsing: when parsing int/double/bool and fail to find end tag,
don't modify the reference arg.
- scheduler: improved messages for preferences

svn path=/trunk/boinc/; revision=15757
2008-08-05 21:43:52 +00:00
David Anderson 6db22d8c0c - web: stylesheet fixes
fixes #708
- sched: slightly revise Bruce's fix


svn path=/trunk/boinc/; revision=15753
2008-08-05 15:06:42 +00:00
Bruce Allen 349f27a39e scheduler: in resending lost results, must copy core
client version.  David -- this can probably be done
better and might indicate that some other info is not
being properly copied.  Please review and fix if needed.
Before this fix, scheduler was complaining about
outdated core clients version 0 < min needed core 413.

tools for scheduler logging: change cgi.log.X to scheduler.log.X
in script that creates on-line logs for users to read
to help diagnose problems.

svn path=/trunk/boinc/; revision=15751
2008-08-04 23:30:37 +00:00
David Anderson 55c6b2fc64 - scheduler: added a debug msg for anonymous platform
svn path=/trunk/boinc/; revision=15749
2008-08-04 18:48:26 +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
Eric J. Korpela a5a6f693cd - Implementation of automatic credit leveling for cpu based projects that
wish to use it.
- The script calculate_credit_multiplier (expected to be run daily as
      a config.xml task) looks at the ratio of granted credit to CPU time 
      for recent results for each app.  Multiplier is calculated to cause 
      median hosts granted credit per cpu second to equal to equal that 
      expected from its benchmarks.  This is 30-day exponentially averaged 
      with the previous value of the multplier and stored in the table 
      credit_multplier.
- When a result is received the server adjusts claimed credit by the
      value the multiplier had when the result was sent.


svn path=/trunk/boinc/; revision=15661
2008-07-22 23:36:55 +00:00
Adam Kornafeld 7b667b4693 Assimilator program for pymw
svn path=/workspaces/kadam/; revision=15658
2008-07-22 21:26:36 +00:00
David Anderson 007b3ba9dd - server compile fix for gcc 4.3
svn path=/trunk/boinc/; revision=15647
2008-07-21 22:29:10 +00:00
David Anderson a227801dd8 - scheduler: in matchmaker scheduler, if find a "locked" array slot,
which whether we're the process that locked it (from Artyom Sharov)

svn path=/trunk/boinc/; revision=15630
2008-07-17 20:58:42 +00:00
David Anderson a6cf172fb0 - scheduler: fix logic to not send plan-class apps to clients
that don't know about plan class

svn path=/trunk/boinc/; revision=15609
2008-07-16 04:25:11 +00:00
David Anderson fa0dbd20c7 - scheduler: with matchmaker scheduling, avoid infinite loop
if result not in DB
    (from Artyom Sharov, DerMeister)

svn path=/trunk/boinc/; revision=15608
2008-07-15 22:44:36 +00:00
David Anderson 8c41a07992 - scheduler: Add a notion of "hard app" for SETI@home.
If an app is hard, the scheduler always does the deadline check,
    even if the client has no other jobs for this project.
    And the estimated wallclock duration is multiplied by 1.3,
    to avoid sending jobs to hosts that will barely make the deadline.

    Hard apps are marked by setting weight = -1.
    This is a total kludge, to avoid adding another field to app.

svn path=/trunk/boinc/; revision=15607
2008-07-15 21:43:45 +00:00
David Anderson ba6526f8c9 - scheduler: add constructor for HOST_USAGE structure
(otherwise get random crap in cmdline)


svn path=/trunk/boinc/; revision=15605
2008-07-14 22:32:20 +00:00
David Anderson 2a5a53c484 - scheduler: fix infinite loop in matchmaker sched (from Artyom Sharov)
svn path=/trunk/boinc/; revision=15603
2008-07-14 20:25:41 +00:00
David Anderson 1147e60b1a - web: fix bugs that cause backslashes to be introduced
in global prefs update via account manager RPC

svn path=/trunk/boinc/; revision=15602
2008-07-14 19:13:19 +00:00
David Anderson 234234569b - Improvements to single-job submission:
1) the assimilator creates a job_summary_WUID file saying
        - what host did the job
        - error status if any
        - info about missing output files
    2) all output files are now optional.
    3) the assimilator deletes temp files (templates, job dir file)

svn path=/trunk/boinc/; revision=15551
2008-07-04 19:41:58 +00:00