Commit Graph

2061 Commits

Author SHA1 Message Date
David Anderson d439244f3f - fixes for gcc 4.3
svn path=/trunk/boinc/; revision=15020
2008-04-06 03:15:36 +00:00
David Anderson 6af9f66b4e - DB/feeder/scheduler: change app_version.xml_doc from blob to mediumblob,
and change the correspending structure field from 64KB to 256KB
    (could increase this if needed).
    This is needed to handle app versions with lots (> 100) of files
- change LARGE_BLOB_SIZE to BLOB_SIZE a bunch of places
- Change COPROCS from vector<COPROC> to vector<COPROC*>.
    Otherwise the right virtual functions of COPROCs don't get called

svn path=/trunk/boinc/; revision=14986
2008-03-31 16:19:45 +00:00
David Anderson bacf9512d1 - web: on completion of team foundership transfer,
clear ping_user and ping_time fields
- web: fix outdated update_forum_activities script

svn path=/trunk/boinc/; revision=14973
2008-03-28 03:05:19 +00:00
David Anderson 13400c9516 Changes for multithread app support:
- update_versions: use __ (not :) as separator for plan class
- client: add plan_class to APP_VERSION;
    an app version is now identified by platform/version/plan_class
- client CPU scheduler: don't assume apps use 1 CPU
- client: add avg_ncpus, max_cpus, flops, cmdline to RESULT
- scheduler: implement app planning scheme

Other changes:

- client: if symlink() fails, make a XML soft link instead
    (for Unix running off a FAT32 FS)
- client: don't accept nonpositive resource share from AMS
- daemons and DB: check for error returns from enumerations,
    and exit if so.  Thus, if the MySQL server goes down,
    all the daemons will soon exit.
    The cron script will restart them every 5 min,
    so when the DB server comes back up so will the project.
- web: show empty max CPU % as ---
- API: get rid of all_threads_cpu_time option (always the case now)


svn path=/trunk/boinc/; revision=14966
2008-03-27 18:25:29 +00:00
David Anderson 9de3ad8a9a - updated GeoIP stuff
svn path=/trunk/boinc/; revision=14951
2008-03-20 22:48:29 +00:00
David Anderson 4e9fbac5e0 - admin web: touch reread_db in manage_app_versions.php
- DB code: remove "is_high_priority" stuff.
- scheduler: merge find_app_version() into get_app_version().
    Have the latter memoize its results (both positive and negative).
    Have it call app_plan() for apps with nonempty plan_class.
- scheduler: first steps towards improved selectability of log messages.
    It will eventually be like the client,
    where you can select among various types of messages.
- feeder: if can't unlink the reread_db trigger file, exit
    (else we'd go into an infinite loop)

svn path=/trunk/boinc/; revision=14940
2008-03-18 21:22:44 +00:00
David Anderson 32022aa71e - web: fixed bugs in Bulgarian translation file
svn path=/trunk/boinc/; revision=14916
2008-03-14 21:40:18 +00:00
David Anderson 815b8fc043 Various preparation for handling multithreaded apps
and apps that use coprocessors.
There now can be several app_versions for the same
(app, platform, version_num) combination.
This changes a number of things.

- Added app_version.plan_class field to DB
- update_versions now looks for a :plan-class in the
    file or directory name, and puts it in the app_version's DB record
- Change uniqueness constraint to include plan_class
- Feeder: the feeder was putting non-deprecated app_versions
    in shared mem, and leaving it to the scheduler to
    find the latest version for a given platform.
    This is dumb.
    Instead, for each app/platform pair the feeder now
    finds the highest version number of a non-deprecated app version,
    and enumerates all non-deprecated app_versions with that
    app/platform/version
- Scheduler: add a BEST_APP_VERSION data structure that keeps track,
    for each app, what the best app_version is for this host.
    This saves the work of recomputing it for each job.

svn path=/trunk/boinc/; revision=14906
2008-03-13 22:57:24 +00:00
Jens Seidler db1175f5c3 Localization: BOINC distribued web site language files updated: Chinese simplified(zh_CN), Spanish(es)
svn path=/trunk/boinc/; revision=14898
2008-03-12 06:21:47 +00:00
David Anderson 90d83d78d9 - web: show venues in private host list
- compile fixes

svn path=/trunk/boinc/; revision=14897
2008-03-11 20:27:19 +00:00
David Anderson 546c0b899a - server: fix botched checkin from 7 March.
The new field (workunit.rsc_bandwidth_bound)
    goes at the END of the record.
    Always do it this way!
- make_work: after creating a batch of new WUs,
    we were waiting 60 sec for the transitioner to
    create the results for them
    (so that our next count of unsent results would be correct).
    This is bogus; if e.g. the transitioner isn't running,
    we'll never get the results, and we'll keep creating WUs forever.

    Instead: explicitly wait for there to be results for
    the last WU from the batch just created.

- scheduler: parse <allow_non_preferred_apps>, <allow_beta_work> correctly.

svn path=/trunk/boinc/; revision=14875
2008-03-10 17:03:15 +00:00
David Anderson 95772cba77 - removed boinc_ncpus_available() and boinc_nthreads() calls.
The design has been changed to constant #threads per app version
    Various changes from Kevin Reed/WCG:
    - server: add workunit.rsc_bandwidth_bound: if nonzero,
        send this WU only to hosts with that much download bandwidth
    - assimilators: if a handler returns DEFER_ASSIMILATION,
        the WU remains in INIT state and will be handled when the
        next instance completes.
        Useful if you want the assimilator to see all instances.
    - scheduler: when setting result.outcome = DETACHED,
        set received_time to now
    - scheduler: removed the reliable_time and reliable_min_avg_credit
        options
    - scheduler/web: add optional <allow_non_preferred_projects>
        in project preferences.
        If present, user will accept work from non-selected apps
        if no work is available for selected apps
    - scheduler: improved messages for projects with multiple apps
    - scheduler: added config options
        <granted_credit_weight> and <granted_credit_ramp_up>.
        Used in calculating host.claimed_credit_per_cpu_sec,
        but I'm not sure how.
    - Added two new credit-granting formulas (validate_util.C):
        stddev_credit() and two_credit()
    - server DB: add rollback_transaction() and affected_rows() to DB_CONN

    NOTE: DB update required

svn path=/trunk/boinc/; revision=14870
2008-03-07 21:13:01 +00:00
David Anderson 09558a5ffa - web: error-check the destination thread for moderation moves
svn path=/trunk/boinc/; revision=14868
2008-03-07 04:54:01 +00:00
David Anderson 0dadf8d62f - admin web: fix profile screen form formatting
- web: remove get_transform_settings_from_user().
    There's only get_output_options()

    NOTE: why is text_transform() doing stripslashes()?
    The slashes shouldn't be in the DB in the first place.
    There's some fundamental confusion here.

- web: fix uotd.php


svn path=/trunk/boinc/; revision=14866
2008-03-07 04:38:06 +00:00
Rytis Slatkevičius 98274b2496 User web: translate some strings in forum.inc (fix #496).
svn path=/trunk/boinc/; revision=14861
2008-03-06 18:16:30 +00:00
David Anderson 5805d5f13a - web: minor code cleanup
svn path=/trunk/boinc/; revision=14854
2008-03-06 00:40:48 +00:00
David Anderson 4e3764df34 - server: debugged single-job submission feature.
It works, at least in my test case.
- boinc_submit script:
    show status every 10 seconds until completed
    add --wait option to show status for previous submission
- Added get_logical_name() in validate_util.C
- create_work: change default target_nresults from 5 to 2,
    max_error_results from 10 to 3,
    max_total_results from 20 to 10,
    max_success_results from 10 to 6
- boinc_cmd: show full usage if no args
- project setup: copy single_job_assimilator

svn path=/trunk/boinc/; revision=14847
2008-03-05 20:16:10 +00:00
David Anderson b20f2d915c - server: added a mechanism for submitting jobs as:
> boinc_submit --infile foo --outfile blah program --args
    This will run "program" on a remote host,
    with the given input, output files, and command-line args

    It manages everything for you.
    You don't have to worry about apps, app_versions,
    template files, wrapper job files, etc.
    See: http://boinc.berkeley.edu/trac/wiki/SingleJob

    Initial checkin - not debugged yet.

svn path=/trunk/boinc/; revision=14842
2008-03-04 23:50:38 +00:00
David Anderson d6ec0b2b5b - web: fixed typo that cause bad (and slow) query
when notifying user of friend acceptance on web

svn path=/trunk/boinc/; revision=14840
2008-03-04 21:17:09 +00:00
David Anderson 1106da6ec6 - transitioner: we're not supposed to ever see "assigned" WUs.
But if we do, set their transitioner time to plus infinity
    so that we don't see them again.
    (otherwise we go into an infinite loop)
- DB code: remove "high_priority" from queries not from scheduler
    (should probably remove them from there too)
- file_deleter: print error msg if apache user doesn't exist

svn path=/trunk/boinc/; revision=14835
2008-03-03 19:33:32 +00:00
David Anderson 577e4ac47d - make_project: initialize send_result_abort=1 in config file
- web: "least recent" => "oldest", "most recent" => "newest"
- scheduler: change DELAY_NO_WORK_CACHE from 20 min to 0.
    Otherwise, a host that has max_wus_in_progress,
    completes one, and sends a work request before the upload is finished
    will delay (and maybe sit idle) for 20 min.
    Better to have a few extra scheduler requests
    and let the client's backoff take care of things.

svn path=/trunk/boinc/; revision=14822
2008-02-28 21:22:50 +00:00
Rytis Slatkevičius 320a0bff3f - User web: fix (at least part of) long threads issue.
svn path=/trunk/boinc/; revision=14816
2008-02-28 18:45:50 +00:00
David Anderson 86857a5452 - Scheduler: fix bugs in work assignment feature
svn path=/trunk/boinc/; revision=14810
2008-02-27 22:26:37 +00:00
David Anderson d77e8a093c - Bolt maps
svn path=/trunk/boinc/; revision=14778
2008-02-22 20:09:23 +00:00
David Anderson 79f6720547 - scheduler: add <max_ncpus> config option.
Use this with N=1 if your application primarily uses a coprocessor

svn path=/trunk/boinc/; revision=14772
2008-02-21 20:10:10 +00:00
David Anderson 5a5e2f41f1 - web: fix message
svn path=/trunk/boinc/; revision=14770
2008-02-21 16:51:54 +00:00
David Anderson 54519a4ee1 - Server: add "job assignment" feature.
Lets you assign a WU to a particular host,
    to one or all hosts belonging to a user or team, or to all hosts.
    See http://boinc.berkeley.edu/trac/wiki/AssignedWork
    Disabled unless you include <enable_assignment> in config.xml
    Uses a new DB table.
    Tested but only a little.
- Server: code cleanup; moved result-handling to a new file,
    and removed the PLATFORM_LIST arg to everything
    (put it in SCHEDULER_REQUEST instead)

svn path=/trunk/boinc/; revision=14767
2008-02-21 00:47:50 +00:00
David Anderson c98a8c6665 - web: typo in bbcode.php
svn path=/trunk/boinc/; revision=14762
2008-02-19 16:42:31 +00:00
David Anderson 2e4c7ee41a - web: fix in XML RPC to get pending credit
fixes #558


svn path=/trunk/boinc/; revision=14758
2008-02-18 23:48:07 +00:00
David Anderson 4ea0acb65e - web: single quotes in team name HTML didn't work
because of magic quotes (need stripslashes()).

svn path=/trunk/boinc/; revision=14754
2008-02-17 16:12:03 +00:00
Jens Seidler bca55b5e67 Localization: BOINC Manager and BOINC distribued web site language files updated: Japanese(ja), Italian(it), Dutch(nl), Polish(pl), Chinese simplified(zh_CN)
svn path=/trunk/boinc/; revision=14750
2008-02-15 17:18:43 +00:00
David Anderson 0bcaa761f0 - rename cgi.log to scheduler.log
- fix ops login

svn path=/trunk/boinc/; revision=14747
2008-02-15 15:25:44 +00:00
Jens Seidler 87804b8236 Correcting a error
svn path=/trunk/boinc/; revision=14742
2008-02-14 06:38:32 +00:00
David Anderson 8f3e114f8d - web: make "next URL" mechanism work when user creates new account
instead of logging in

svn path=/trunk/boinc/; revision=14737
2008-02-13 19:54:54 +00:00
David Anderson 02adbc4d49 - web: remove all references to the PHP "session" mechanism,
which added only confusion.
    Implement login directly, using cookies.
- All cookie setting/clearing now goes through two functions,
    send_cookie() and clear_cookie().
    These deal with path and expiry
    (e.g. if you want to have different language or forum settings
    on two projects on the same server, that now works).

svn path=/trunk/boinc/; revision=14735
2008-02-13 19:02:44 +00:00
David Anderson b543bcc3c4 svn path=/trunk/boinc/; revision=14730 2008-02-13 04:25:52 +00:00
David Anderson 35dab13859 - client code: my next-to-last checkin was flawed
svn path=/trunk/boinc/; revision=14725
2008-02-12 20:33:05 +00:00
David Anderson ee34cf3ab7 - client: removed sprawl
svn path=/trunk/boinc/; revision=14721
2008-02-12 15:04:27 +00:00
David Anderson 51286a03dc - Initial checkin of Bossa code
svn path=/trunk/boinc/; revision=14716
2008-02-11 23:38:31 +00:00
David Anderson a323eba986 - scheduler: fix bone-head mistake in HR code
svn path=/trunk/boinc/; revision=14715
2008-02-10 05:17:57 +00:00
David Anderson f77420c2c0 - scheduler: do "careful update" of workunit.hr_class
in case someone else changed since we read it.
    Hopefully this will fix a race condition
    where WU results get sent to different HR classes.
    (Alternatively we could use transactions,
    or acquire the semaphore during read/update,
    but this could impact performance).

svn path=/trunk/boinc/; revision=14710
2008-02-08 17:20:09 +00:00
David Anderson 936c729b9b - Bolt: fixed bugs in review and repeat
svn path=/trunk/boinc/; revision=14707
2008-02-07 23:21:31 +00:00
David Anderson abd1f1e752 - implemented question mechanism
svn path=/trunk/boinc/; revision=14695
2008-02-07 01:09:30 +00:00
David Anderson a1664cc070 - scheduler: simplified Carl's checkin (avoid virtual destructors)
- API: small tweak for standalone

svn path=/trunk/boinc/; revision=14679
2008-02-05 21:26:43 +00:00
David Anderson e56ed1430f - DB code: safe_atof() was returning a float,
causing a potential loss of precision.
    Change it to double (same as atof())
- When moderator locks a thread, let them specify reason

svn path=/trunk/boinc/; revision=14662
2008-02-02 17:01:57 +00:00
David Anderson b8877e887e - add weak auth to am_get_info web RPC (from Nicolas)
svn path=/trunk/boinc/; revision=14661
2008-02-02 15:38:59 +00:00
David Anderson 904cbe5a4f - Add Bolt admin page
- added "hidden" flag to courses


svn path=/trunk/boinc/; revision=14660
2008-02-01 23:11:09 +00:00
David Anderson d2a0353a00 - manager: fix unix build (new file)
svn path=/trunk/boinc/; revision=14658
2008-01-31 23:43:37 +00:00
David Anderson 4cfba489df - implement the review mechanism
svn path=/trunk/boinc/; revision=14653
2008-01-30 19:29:51 +00:00
David Anderson c715d51bff - web: add "% of CPUs to use on multiprocessors" pref
- client: enforce the above pref; remove the max_cpus pref.

svn path=/trunk/boinc/; revision=14639
2008-01-29 21:01:04 +00:00