This cause the core client to exit immediately before or after
running a job,
letting you examine the contents of the slot directory.
- scheduler: changed max # of CPUs used in daily_result_quota
limit from 4 to 8, and make it a compile-time parameter
- feeder/scheduler: make the number of work items in shared
memory configurable (in config.xml).
The element is <shmem_work_items>
- feeder: make the size of the work item query configurable
(<feeder_query_size)
- feeder: remove code related to removing infeasible results
from shared mem.
This mechanism was never needed,
and I think a timeout would accomplish the same effect.
client/
app.C
app_start.C
client_state.C,h
cs_cmdline.C
sched/
feeder.C
sched_array.C
sched_config.C,h
sched_send.C
sched_shmem.C,h
sched_util.C
show_shmem.C
svn path=/trunk/boinc/; revision=12771
Lets you set all of them at once, as suggested by Nicolas Alvarez.
fixes#131
client/
gui_rpc_server_ops.C
html/user/
sample_index.php
lib/
boinc_cmd.C
gui_rpc_client.h
gui_rpc_client_ops.C
svn path=/trunk/boinc/; revision=12749
If <ended>1</ended> is included in config.xml,
this gets send to clients,
and they display a "Project ended - OK to detach" message.
client/
client_state.C
client_types.C,h
scheduler_op.C
clientgui/
VIewProjects.cpp
VIewProjectsGrid.cpp
lib/
gui_rpc_client.h
gui_rpc_client_ops.C
gui_rpc_client_print.C
sched/
sched_config.C,h
server_types.C
svn path=/trunk/boinc/; revision=12742
Slot is already encoded in path.
- client, Linux: get memory size from /proc/meminfo
rather than sysconf()
client/
app_start.C
hostinfo_unix.C
svn path=/trunk/boinc/; revision=12731
- boinc_cmd: canonicalize URLs
- user web: fix link to Top Teams
- back end: remove code related to alternate download dir
client/
cpu_sched.C
sim.C
html/
inc/
stats_sites.inc
user/
stats.php
lib/
boinc_cmd.C
sched/
file_deleter.C
sched_config.C,h
svn path=/trunk/boinc/; revision=12694
1) client wakes up from hibernate
2) one or more network ops start (e.g. because backoff expired)
3) ops fail because DNS system isn't up yet
4) connect to reference site fails too
5) user sees "please create physical connection",
even though there's been a physical connection the whole time.
Solution:
- keep track of "last wakeup time": the last time the
time of day (measured in poll_slow_events()) increased by more than 10 times the polling interval.
This must be either coming out of hibernation,
or the user resetting the system clock.
- When a network operation fails, try to contact the reference site
only if it's more than 30 seconds after the last wakeup time.
client/
client_state.C,h
net_stats.C
svn path=/trunk/boinc/; revision=12665
if the initial sched request failed,
the manager would show "communicating" for 60 sec,
then time out and show "failed to attach".
But the project would actually be attached.
This was due to a logic error,
but I fixed it in a more fundamental way:
by considering an attach to be complete immediately,
without waiting for a successful scheduler RPC.
This was originally done to ensure that the URL and account key were valid.
But when using the BOINC Manager, we've already verified
both of these before doing the attach project RPC.
When using boinc_cmd, you now have to check for messages
indicating a bad URL or account key.
I changed things to print these messages on every sched RPC.
Implementation: the notion of "tentative project" no longer exists.
client/
client_state.C,h
client_types.C,h
cs_account.C
cs_benchmarks.C
cs_scheduler.C
gui_rpc_server_ops.C
scheduler_op.C
sim.C
sim_util.C
svn path=/trunk/boinc/; revision=12663
before linking.
- core client: when parse app_info.xml,
set platform to primary platform.
Otherwise anonymous platform mechanism doesn't work.
- GUI RPC: in attach project RPC, check for
already attached even in config file case
client/
cs_statefile.C
gui_rpc_server_ops.C
scheduler_op.C
time_stats.C
svn path=/trunk/boinc/; revision=12662
If set, the scheduler will use EDF simulation,
together with the in-progress workload reported by the client,
to avoid sending results that
1) will miss their deadline, or
2) will cause an in-progress result to miss its deadline, or
3) will make an in-progress result miss its deadline
by more than is already predicted.
If this option is not set, or if the client request doesn't
include a workload description (i.e. the client is old)
use the existing approach, which assumes there's no workload.
NOTE: this is experimental. Production projects should not use it.
- EDF sim: write debug stuff to stderr instead of stdout
- Account manager:
- if an account is detach_when_done, set dont_request_more_work
- check done_request_more_work even for first-time projects
- update_uotd: generate a file for use by Google gadget
- user_links(): use full URLs (so can use in Google gadget)
client/
acct_mgr.C
work_fetch.C
html/
inc/
uotd.inc
util.inc
user/
uotd_gadget.php (new)
sched/
Makefile.am
edf_sim.C
sched_config.C,h
sched_resend.C
sched_send.C,h
server_types.C,h
svn path=/trunk/boinc/; revision=12639
tells how much disk space BOINC is using
(not including projects).
- added project.max_infeasible_count to client simulator
client/
gui_rpc_server_ops.C
sim.C,h
sim_util.C
clientgui/
ViewResources.cpp
lib/
filesys.C
bui_rpc_client.h
bui_rpc_client_ops.C
svn path=/trunk/boinc/; revision=12615
- Add --server_uses_workload option
(simulate server that does EDF simulation)
- Add simulation of exponential backoff when don't get work.
Otherwise it will keep asking forever.
- move non-interesting stuff to sim_util.C
- change simulator code to use ' instead of " in compiled translations
client/
makefile_sim
sim_util.C
sim.C,h
work_fetch.C
html/inc/
translation.inc
sched/
edf_sim.C
edf_sim.h (new)
svn path=/trunk/boinc/; revision=12604
if get an app_version with unknown platform name, ignore it.
This means that, e.g. if someone moves a BOINC directory
from Intel to PowerPC Mac, things will still work right.
client/
client_state.C,h
cs_platforms.C
cs_scheduler.C
cs_statefile.C
svn path=/trunk/boinc/; revision=12579
Remove the tacet assumption that a host can handle
applications for a single platform.
With the Apr 30 scheduler changes,
a project may (at different times)
send app versions for the same app and version number,
but different platforms.
Before we would have ignored all but the first;
now we handle them correctly.
Implementation notes:
- Add APP_VERSION.platform, RESULT.platform,
and RESULT.version_num.
If these are missing from an XML doc
(e.g. an existing state file or a scheduler reply
from a project not running current server)
then set to the primary platform.
- Continue to write workunit.version_num
and active_task.version_num to state file,
even though these are no longer part of the struct.
This allows users to revert to an older version.
client/
app.C
check_state.C
client_state.C,h
client_types.C,h
cs_apps.C
cs_scheduler.C
cs_statefile.C
sim.C
svn path=/trunk/boinc/; revision=12542
* refactored the alternate platform mechinism so that we
can support multiple alternate platforms.
* moved everything to cs_platforms.C since we expect the
kind of sprawl that is in host_info.C on the *nix
environments.
- Clean up some warnings
client/
acct_setup.C
client_state.C, .h
client_types.h
cs_platforms.C (Added)
cs_scheduler.C
cs_statefile.C
http_curl.C
lib/
str_util.h
svn path=/trunk/boinc/; revision=12531
print a message but don't reset projects
(otherwise people running on 64-bit machines would lost
in-progress jobs when switching to 64-bit client)
client/
client_state.C
svn path=/trunk/boinc/; revision=12513
- core client: set config settings to default values before
parsing cc_config.xml.
Otherwise, if you have a lot of log flags set,
and tell the client to reread a config file that
doesn't specify ANY log flags,
you'll end up with all the flags still set.
(from Sebastian Masch)
- make_project: add cmdline args for update_stats in initial config
tools/
make_project
client/
log_flags.C,h
svn path=/trunk/boinc/; revision=12490
- Exteded the "altername_platform" mechanism to x86_64 linux
and solaris. The current alternate platforms found by configure
are...
x86_64-pc-linux-gnu -> i686-pc-linux-gnu
sparc64-sun-solaris -> sparc-sun-solaris
sparc-sun-solaris -> sparc-sun-solaris2.7
powerpc64-apple-darwin -> powerpc-apple-darwin
- The alternate platform can be overridden on the configure command line
--with-boinc-alt-platform="platformname"
m4/
boinc_platform.m4
sched/
Makefile.am
client/
client_state.C
cs_scheduler.C
client_state.h
svn path=/trunk/boinc/; revision=12467
- Server: add new database field host.error_rate.
Stores a dynamic estimate of the fraction of the hosts's
results that fail validation (updated by the validator).
client/
sim.C
cs_prefs.C
db/
boinc_db.C,h
html/ops/
db_update.php
sched/
handle_request.C
sched_msgs.h
validator.C
svn path=/trunk/boinc/; revision=12466
- Match the client-side and server-side XML for alternate
platforms.
- Print both the max active memory usage and max idle
memory usage after all the preference information has
been parsed.
client/
cs_prefs.C
cs_scheduler.C
svn path=/trunk/boinc/; revision=12425