Commit Graph

40 Commits

Author SHA1 Message Date
David Anderson 3dc7dc9ad3 - client: debug async file copy. Seems to be working.
svn path=/trunk/boinc/; revision=25195
2012-02-03 22:08:11 +00:00
David Anderson 130d6ed4f0 - server: revamp the "assigned job" mechanism.
This now supports two main use cases:
    1) there's a job that you want to run once on all hosts,
        present and future
        (or all hosts belonging to a user, or to a team).
        The job is never transitioned, validated, or assimilated.
    2) There's a normal job for which you want to use only
        hosts belonging to a specific user (e.g. cluster or cloud hosts).
        This restriction can be made either when the job is created,
        or on the fly,
        e.g. as part of a scheme for accelerating batch completion.
        For the latter purposes we now provide a function
            restrict_wu_to_user(DB_WORKUNIT&, int userid);

        The job goes through the standard
        transitioner/validator/assimilator path.

    These cases are enabled by config flags
        <enable_assignment_multi/>
        <enable_assignment/>
    respectively.

    Assignment of type 2) are no longer stored in shared mem,
    so there is no limit on their number.

    There is no longer a rule that assigned job names must contain "asgn".

    NOTE: this requires a database update.


svn path=/trunk/boinc/; revision=25169
2012-01-30 22:39:13 +00:00
David Anderson cb3cdae1a5 - client/server: add a new result state RESULT_UPLOAD_FAILED
for when the job completed successfully but
    one or more output files had permanent upload failures.
    Show this state in web interfaces.
- sample_work_generator: check return value of count_unsent_results(),
    so that we don't generate infinite work if there's a DB problem
- web: RSS feed shows news items from last 90 days, rather than 14


svn path=/trunk/boinc/; revision=24377
2011-10-11 17:41:10 +00:00
David Anderson 8ca24cbbab - client, work fetch policy:
adjust project REC by the amount of work queued, to increase variety
    NOTE: at some point I think I had a reason to not do this,
    but I can't remember what it is.
- client, job scheduling policy: fix how project REC is adjusted


svn path=/trunk/boinc/; revision=23838
2011-07-13 19:46:03 +00:00
David Anderson c70cd934b4 - server: rename send_file to put_file.
Factor out put_file() and get_file() functions
    so they have a C++ API as well as command-line


svn path=/trunk/boinc/; revision=23425
2011-04-24 02:00:27 +00:00
David Anderson 17c2dd9ae6 - client: don't use the Snooze mechanism to handle
OS-requested suspension
    (especially with a 1-hour snooze period).
    Instead, handle them directly.


svn path=/trunk/boinc/; revision=23420
2011-04-23 19:02:17 +00:00
David Anderson c6f72463cc - admin web: fix bug in credit.php
svn path=/trunk/boinc/; revision=22697
2010-11-14 17:04:56 +00:00
David Anderson 11fc2dcdd2 - client: treat notices from schedulers a little differently.
Ignore duplicate notices unless they're at least 24 hours
    newer than the previous one.

svn path=/trunk/boinc/; revision=22293
2010-08-26 21:26:52 +00:00
David Anderson 87c84afe0a - client: add preference for limiting network xfers in last N days
(no GUI yet)

svn path=/trunk/boinc/; revision=21242
2010-04-21 23:17:12 +00:00
David Anderson 8f3d111f5c - client: don't suspend non-CPU-intensive jobs because of CPU load
svn path=/trunk/boinc/; revision=20825
2010-03-10 18:59:40 +00:00
David Anderson 20d6b06f5f - client: initial checkin for "don't compute if CPU usage above X"
svn path=/trunk/boinc/; revision=20192
2010-01-19 00:03:38 +00:00
David Anderson 735e2b0448 - internal change: rename MSG_USER_ERROR to MSG_USER_ALERT
svn path=/trunk/boinc/; revision=20027
2009-12-23 18:02:40 +00:00
Rom Walton 2d25b6698d - Cleanup various warnings
- WINSCR: Implement new configuration dialog with new parameters
    - WINSCR: Remove crufty code
    - WINSCR: Update copyrights in resource files
    
    client/
        app.cpp
    clientscr/
        boinc_ss.h
        boinc_ss.rc
        boinc_ss_opengl.h
        boinc_ss_opengl.rc
    clientscr/
        screensaver.cpp, .h
        screensaver_win.cpp, .h
    lib/
        common_defs.h
        crypt.cpp
        idlemon_win.cpp
        win_util.cpp
    samples/worker/
        worker.cpp
    win_build/
        boinc_ss.vcproj
        multi_thread.vcproj
        sleeper.vcproj
        ss_app.vcproj
        uc2_graphics.vcproj

svn path=/trunk/boinc/; revision=19923
2009-12-16 19:55:09 +00:00
Eric J. Korpela 8f3abcc835 - Added checks for net/*.h, arpa/*.h, netinet/*.h and code to figure out
which of those files to include
    - Modified MAC address check to work on some non-Linux unixes.
      (mac_address.cpp)
    - Added suggested change to "already attached to project" checking.
      (ProjectInfoPage.cpp)
    - changed includes of standard c header files to their c++ equivalents
      (i.e. replaced <stdio.h> with <cstdio>) for namespace protection.
    - replaced "using namespace std;" with more explicit "using std::function" in
      several files.
    - Fixed bug in checking whether the os is OS/2 and added conditional OS_OS2
      to the build environment. (boinc_platform.m4,configure.ac)
    - Changed build environment to not use -nostandardlibs unless we are using
      G++ and static linkage is specified. (configure.ac)
    - Added makefiles and package building files for solaris CSW package manager.
    - Fixed bug with attempting to find login name using logname. (configure.ac)
    - Added ifdef HAVE_* protection around some include files commonly found in
      sys.
    - Added support for unified binary for x86_64/i686-pc-solaris.
      (cs_platforms.cpp)
    - generate_host_cpid() now uses MAC address on non-linux unix.
      (hostinfo_network.cpp)
    - Macro BOINC_SET_COMPILE_FLAGS now doesn't check gcc only flags on non-gcc
      compilers. (boinc_set_compile_flags.m4)
    - Library compiles no longer depend upon the library extension or require
      the library to be prefixed with lib.
    - More fixes for fcgi builds.
    - Added declaration of "struct ether_addr" and ether_ntoa().  Have not yet
      implemented ether_ntoa() for machines that don't have it, or where it is
      buggy.  (unix_util.h)
    - Added FCGI::perror() which calls FCGI_perror(). (boinc_fcgi.{h,cpp})
    - Fixed library Makefiles so that all required headers get installed.


svn path=/trunk/boinc/; revision=17388
2009-02-26 00:23:23 +00:00
Charlie Fenton 2c89b4103e SS: Implement basic new functionality in screensaver coordinator (tested on Mac only so far)
svn path=/trunk/boinc/; revision=17146
2009-02-05 12:32:16 +00:00
David Anderson b9fc36ef84 - GUI RPC: made password file read into function
- lib: minimized FCGI library

svn path=/trunk/boinc/; revision=17133
2009-02-03 21:22:50 +00:00
David Anderson 377545a056 - scheduler: if we're not sending work because of the user's "no GPUs" pref,
tell them so.
- scheduler: fix bug that caused no CUDA jobs to be sent

svn path=/trunk/boinc/; revision=16893
2009-01-12 23:47:52 +00:00
David Anderson 30aecfc6f8 - debug "exclusive app" feature
svn path=/trunk/boinc/; revision=16090
2008-09-29 18:51:46 +00:00
David Anderson f0e0e8f977 - client: add "exclusive app" feature. If you put
<exclusive_app>foo.exe</exclusive_app>
    in your cc_config.xml, BOINC will suspend computing
    whenever foo.exe is running (e.g., a game).

    Eventually we might want to put the interface in preferences
    instead of cc_config.xml

svn path=/trunk/boinc/; revision=16087
2008-09-29 16:47:10 +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
Rom Walton 5a46215511 - MGR: Make help system work again
- MGR: Add pre-release to the BOINC Manager title bar and about
        dialog if it is a pre-release version of BOINC.
    - CLI: Add some pre-release text to the CC startup routine and
        suggest they revert back to a released build if they don't
        plan on testing the client.

    /
        version.h
        version.h.in
    client/
        auto_update.C
        client_state.C
    clientgui/
        AdvancedFrame.cpp
        DlgAbout.cpp
        sg_BoincSimpleGUI.cpp
        sg_DlgMessages.cpp
        sg_DlgPreferences.cpp
        SkinManager.cpp
    lib/
        common_defs.h

svn path=/trunk/boinc/; revision=15067
2008-04-17 16:18:16 +00:00
David Anderson b6cc885abf - server: make the special substring for assigned WUs
into a #define's symbol (ASSIGNED_WU_STR)
- scheduler: when send client command to abort a WU,
    include a reason code in the scheduler log

svn path=/trunk/boinc/; revision=14798
2008-02-26 17:24:29 +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 9b2998009f - client: add --start_delay cmdline option and <start_delay> config option.
Specifies an amount of time to delay starting apps
    (e.g. so that BOINC doesn't slow down boot process)

    Note: mechanisms that start BOINC at boot time
    need to figure out how to set this flag.

svn path=/trunk/boinc/; revision=14445
2007-12-27 21:40:20 +00:00
David Anderson 481d5dd45b - compile fixes (remove comma after last element of enum)
svn path=/trunk/boinc/; revision=14430
2007-12-21 16:27:38 +00:00
Frank Thomas 3bfc78b511 Updated the postal address of the Free Software Foundation in all license headers. See http://lists.ssl.berkeley.edu/pipermail/boinc_dev/2007-October/008939.html for reference.
svn path=/trunk/boinc/; revision=13804
2007-10-09 11:35:47 +00:00
David Anderson d302a5e107 - client/manager/API: code cleanup to disentangle sandbox code from lib/.
- move client sandbox-specific code to a new file, sandbox.C
    - remove g_use_sandbox from util.C; move to MainDocument.cpp (manager)
        and sandbox.C (client)
    - don't declare check_security() in util.h; it's not in util.C
    - don't call remove_project_owned_file_or_dir() in
        boinc_delete_file_aux() or boinc_rmdir();
        rather, at the points in the client that delete
        dirs that are usually owned by boinc_projects,
        call remove_project_owned_file_or_dir() first,
        then clean_out_dir().
    - rename boinc_exec() to switcher_exec() and move it to sandbox.C

Note: this change was sparked by needing to remove a call to getgrnam()
from boinclib, to avoid requiring the same version of glibc
on both compile and target hosts

svn path=/trunk/boinc/; revision=13784
2007-10-05 16:47:07 +00:00
David Anderson f1f5930579 - client: removed everything related to screensaver
(deciding which app to use, implementing blanking interval, etc.)
    This logic is all now in the screensaver itself.
- GUI RPC: removed get/set screensaver mode RPCs
- API: added a "backwards_compatible_graphics" flag to BOINC_OPTIONS.
    V6 apps should set this.
    If set, the runtime library checks for graphics messages
    from the client, and launches/kills the graphics app (if any).
    The app will then work graphically with pre-V6 clients.
- removed some old files

svn path=/trunk/boinc/; revision=13651
2007-09-25 16:04:45 +00:00
David Anderson eaed993f4c - User web and client: added a new pref "suspend_if_no_recent_input"
that lets you suspend computation after a specified period of idleness.
        This is necessary to allow some machines to go into low-power mode
        when they're not being used.
    - Change the wording of some existing prefs; for example, changed
        "Do work while computer is in use?" to
        "Suspend work while computer is in use".
        The former is confusing - if you say yes, BOINC may in fact
        NOT do work while the computer is in use,
        due to other factors (time of day, etc.)
    TODO: HOST_INFO::users_idle() should be changed so that it
        returns the idle time
        (rather than telling you whether we've been idle for X)

svn path=/trunk/boinc/; revision=13193
2007-07-19 23:22:19 +00:00
Rom Walton 67078e9e67 - Fix a build break in the manager.
client/
        app.h
    lib/
        common_defs.h

svn path=/trunk/boinc/; revision=12646
2007-05-11 03:49:25 +00:00
David Anderson a26b6a2215 *** empty log message ***
svn path=/trunk/boinc/; revision=11972
2007-01-25 23:39:06 +00:00
David Anderson 420e00f137 *** empty log message ***
svn path=/trunk/boinc/; revision=11860
2007-01-15 19:25:23 +00:00
David Anderson 86ad19ce5f *** empty log message ***
svn path=/trunk/boinc/; revision=11672
2006-12-14 00:42:43 +00:00
David Anderson 41eb40b051 *** empty log message ***
svn path=/trunk/boinc/; revision=11643
2006-12-11 23:42:54 +00:00
David Anderson e9a0efd06d *** empty log message ***
svn path=/trunk/boinc/; revision=11562
2006-11-22 03:23:38 +00:00
David Anderson 6f6f62c955 *** empty log message ***
svn path=/trunk/boinc/; revision=11515
2006-11-10 17:55:22 +00:00
David Anderson d9465a8138 *** empty log message ***
svn path=/trunk/boinc/; revision=11387
2006-10-28 18:25:35 +00:00
David Anderson 1a99fddbd1 *** empty log message ***
svn path=/trunk/boinc/; revision=11103
2006-09-05 16:06:44 +00:00
David Anderson b86bd36cf6 *** empty log message ***
svn path=/trunk/boinc/; revision=11082
2006-09-01 22:21:20 +00:00
David Anderson 76b384750c *** empty log message ***
svn path=/trunk/boinc/; revision=11079
2006-09-01 21:12:45 +00:00