mirror of https://github.com/BOINC/boinc.git
13175 lines
374 KiB
Plaintext
13175 lines
374 KiB
Plaintext
David 3 Jan 2004
|
||
- prelimary checkin of "trickle" mechanism
|
||
- added trickle table to DB
|
||
- add boinc_trickle() to API; implement
|
||
- logic in client to find/rename trickle files
|
||
- got rid of strlcpy() (not portable)
|
||
- commented out WORKSEQ code (probably will never finish)
|
||
- factored out project directory name function
|
||
- error checking of malloc()s in MFILE
|
||
|
||
api/
|
||
boinc_api.C,h
|
||
mfile.C
|
||
client/
|
||
app.C,h
|
||
client_state.C
|
||
client_types.C
|
||
cs_benchmark.C
|
||
file_names.C,h
|
||
db/
|
||
boinc_db.C,h
|
||
constraints.sql
|
||
db_base.h
|
||
schema.sql
|
||
doc/
|
||
api.php
|
||
create_project.php
|
||
language.php (new)
|
||
trickle.php (new)
|
||
lib/
|
||
filesys.C,h
|
||
tools/
|
||
backend_lib.C,h
|
||
|
||
Gary 4 Jan 2004
|
||
- Added missing sys header declaration needed to build libboinc
|
||
on OSX jaguar
|
||
|
||
api/
|
||
boinc_api.C
|
||
|
||
David 5 Jan 2004
|
||
- patch up hole in hosts_user.php that shows hosts
|
||
even when user doesn't want
|
||
- All pages check for project up before opening DB
|
||
|
||
html_user/
|
||
apps.php
|
||
db.inc
|
||
download.php
|
||
hosts_user.php
|
||
util.inc
|
||
|
||
Gary 5 Jan 2004
|
||
- changed file_delete() function calls to boinc_delete_file()
|
||
as a result of the 2004-01-03 change to filesys.C,h
|
||
client/win
|
||
wingui_mainwindow.cpp
|
||
|
||
Gary 5 Jan 2004
|
||
- BOINC release 2.17 for windows, linux, solaris, mac os x
|
||
(os x version supports both 10.2 <jaguar> and 10.3 <panther>)
|
||
|
||
David 6 Jan 2004
|
||
- When showing a user's posts, break into groups of 10
|
||
- Don't show pending credit directly in user page.
|
||
Give a link to a separate page that shows pending results
|
||
and their claimed credit
|
||
- When show list of results, add linked ID column allowing user
|
||
to see details of result (e.g. stderr_out)
|
||
- removed "private" arg for show_host_detail.php.
|
||
If the host belongs to logged-in user, show private info
|
||
- removed alternative sorting options for host lists
|
||
(there was a bug where a user host list
|
||
linked to top_hosts.php)
|
||
- added a couple of "repair" scripts
|
||
|
||
html_user/
|
||
db.inc
|
||
host.inc
|
||
host_edit_action.php
|
||
host_venue_action.php
|
||
pending.php (new)
|
||
repair.php (new)
|
||
result.inc
|
||
result.php
|
||
results.php
|
||
show_host_detail.php
|
||
user.inc
|
||
util.inc
|
||
workunit.php
|
||
forum/
|
||
repair.php (new)
|
||
user_posts.php
|
||
|
||
David 7 Jan 2004
|
||
- don't show #results in 1-line host summary (too slow)
|
||
- totally redid "host merge" mechanism.
|
||
- show all hosts that are compatible with this one
|
||
(not just older ones)
|
||
- show checkboxes with "select all" button
|
||
so you can easily merge large #s of hosts
|
||
- merge logic merges into newest host
|
||
- let anyone look at any result and any host
|
||
(may want to change this later,
|
||
but for now it helps with debuggin)
|
||
- write log message when scheduler creates new host
|
||
because of bad RPC seqno
|
||
|
||
html_user/
|
||
host.inc
|
||
host_edit_action.php
|
||
host_edit_form.php
|
||
repair.php
|
||
result.php
|
||
results.php
|
||
show_host_detail.php
|
||
user.inc
|
||
workunit.php
|
||
sched/
|
||
handle_request.C
|
||
|
||
David 7 Jan 2004
|
||
- more trickle support:
|
||
- server parses <trickle> elements from RPC request,
|
||
creates trickle records,
|
||
sends <trickle_ack> if it did any
|
||
- client scans project for trickle files,
|
||
adds them to RPC requests
|
||
- if get <trickle_ack> in RPC reply, delete trickle files
|
||
- parse <trickle_ack> in RPC reply
|
||
- use safe_strncpy for shared-mem graphics messages
|
||
|
||
client/
|
||
client_state.h
|
||
cs_scheduler.C
|
||
scheduler_op.C,h
|
||
db/
|
||
boinc_db.h
|
||
doc/
|
||
boinc_dev.php
|
||
host_id.php (new)
|
||
host_measure.php
|
||
participate.php
|
||
lib/
|
||
app_ipc.C,h
|
||
filesys.h
|
||
sched/
|
||
handle_request.C
|
||
server_types.C,h
|
||
|
||
David 7 Jan 2004
|
||
- scheduling server: if get invalid hostid,
|
||
look up user before creating new host
|
||
(otherwise will create a host record with userid 0)
|
||
- if get a result that's already been received, ignore it
|
||
|
||
sched/
|
||
handle_request.C
|
||
|
||
David 7 Jan 2004
|
||
- added "host delete" function (if host has zero results)
|
||
|
||
html_user/
|
||
host_delete.php (new)
|
||
|
||
David 8 Jan 2004
|
||
- Fixed bugs that caused WUs to be mistakenly marked COULDNT_SEND:
|
||
- the feeder marks WUs as COULDNT_SEND whenever
|
||
at least 50% of the results have infeasible_count > 20
|
||
(it used to be > 0, i.e. a WU could be marked as COULDNT_SEND
|
||
when it was infeasible for even a single host)
|
||
- Some hosts (Macs) report their memory size (host.m_nbytes)
|
||
as a large negative number.
|
||
Change this so that the min memory size is 64 MB
|
||
|
||
html_user/
|
||
host.inc
|
||
host_delete.php (new)
|
||
sched/
|
||
feeder.C
|
||
handle_request.C
|
||
sched_shmem.h
|
||
|
||
Gary 8 Jan 2004
|
||
- Fixed problem in windows client where user prefs were
|
||
being ignored at startup as a side-effect of the previous
|
||
initial startup fix. Now initial startup works and user
|
||
prefs are honored at startup.
|
||
|
||
client/
|
||
Prefs.C
|
||
client/win
|
||
wingui_mainwindow.cpp,h
|
||
|
||
David 9 Jan 2004
|
||
- on download page, don't tell people to create an account
|
||
if they already are logged in (and hence have an account)
|
||
- print message in CGI log if can't find user
|
||
- don't hyperlink 0 results etc.
|
||
|
||
html_user/
|
||
download.inc
|
||
download.php
|
||
host.inc
|
||
repair.php
|
||
forum/
|
||
help_desk.php
|
||
thread.php
|
||
user_posts.php
|
||
sched/
|
||
handle_request.C
|
||
|
||
David 9 Jan 2004
|
||
- added project files for VC++ 7.0, and fixed a few compile warnings
|
||
|
||
client/
|
||
app.C
|
||
cs_benchmark.C
|
||
cs_scheduler.C
|
||
net_xfer.C
|
||
win/
|
||
stackwalker.h
|
||
win_build/
|
||
boinc.sln
|
||
*.vcproj
|
||
|
||
Karl 2004-01-12
|
||
|
||
- BOINC how has a project.xml file (by default in the same location as
|
||
config.xml) that can contain database information:
|
||
- projects
|
||
- platforms
|
||
- core versions
|
||
- apps
|
||
- app versions
|
||
- this information used to be added one at a time using the `add'
|
||
command-line tool; now there is a new tool `xadd' available, which
|
||
parses project.xml and adds anything necessary.
|
||
|
||
- refactored configxml.py into boincxml.py and configxml.py:
|
||
- boincxml.py contains generic XML utility code
|
||
- configxml.py contains code specific to config.xml and run_state.XML
|
||
- external interface to configxml.py unchanged
|
||
|
||
- new projectxml.py that parses and writes project.xml
|
||
|
||
- refactored tools/add into tools/add and py/Boinc/add_util.py
|
||
|
||
- added new addable fields
|
||
|
||
py/Boinc/
|
||
boinc_project_path.py
|
||
configxml.py
|
||
boincxml.py (new)
|
||
projectxml.py (new)
|
||
add_util.py (new)
|
||
db_base.py
|
||
Makefile.am
|
||
tools/
|
||
xadd (new)
|
||
add
|
||
Makefile.am
|
||
doc/
|
||
tool_xadd.php (new)
|
||
tool_add.php
|
||
make_project.php
|
||
tools.php
|
||
|
||
Karl 2004-01-12
|
||
- source release 2.18 (no client-visible changes)
|
||
|
||
David Jan 12 2004
|
||
- change team account so that team gets (and keeps) credit
|
||
for results of users while they belong to team:
|
||
- add team_id field to result
|
||
- add expavg_time field to team
|
||
- validator increments team credit
|
||
- scheduler fills in result.teamid
|
||
- don't delete empty teams
|
||
- rename result.client_version_num to result.app_version_num
|
||
populate this field based on <app_version> field of stderr_out
|
||
- change update_stats so that it doesn't compute team credit fields,
|
||
and so that it updates expavg fields only if the entity
|
||
has been idle for 4 days or more
|
||
- add DB_BASE::update_field() (to update one or more fields,
|
||
not whole record)
|
||
- add lookup_team() to db.inc
|
||
SHOULD ALWAYS USE FUNCTIONS LIKE THIS INSTEAD OF AD-HOC QUERIES
|
||
- factor out mysql_query() into DB_BASE::do_query()
|
||
|
||
db/
|
||
db_boinc.C,h
|
||
db_base.C,h
|
||
schema.sql
|
||
html_user/
|
||
db.inc
|
||
team.inc
|
||
team_join_action.php
|
||
team_quit_action.php
|
||
sched/
|
||
handle_request.C
|
||
update_stats.C
|
||
validate.C
|
||
|
||
David Jan 14 2004
|
||
- typo in boincxml.py
|
||
(caused "start" script to always set enabled=0
|
||
in run_state file, with various bad consequences)
|
||
- two indentation problems in "start":
|
||
line 499
|
||
line 516
|
||
|
||
py/Boinc/
|
||
boincxml.py
|
||
sched/
|
||
start
|
||
|
||
David Jan 14 2004
|
||
- add <core_client_version> element to <stderr_out>
|
||
of results when send to server
|
||
|
||
client/
|
||
client_types.C
|
||
|
||
David Jan 14 2004
|
||
- don't blink sys tray icon more than 10 sec (from Rom Walton)
|
||
|
||
client/win/
|
||
wingui_mainwindow.cpp,h
|
||
|
||
David Jan 14 2004
|
||
- windows console version works again (from Rom Walton)
|
||
|
||
client/
|
||
main.C
|
||
net_xfer.C
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
|
||
David Jan 15 2004
|
||
- factored base64 declarations
|
||
|
||
lib/
|
||
base64.h (new)
|
||
|
||
David Jan 15 2004
|
||
- changed file_upload_handler so that it returns success
|
||
if offset >= nbytes.
|
||
That this happens at all indicates an error in the client,
|
||
but we'll get to that later.
|
||
- Scheduler: if last RPC too recent, show the interval
|
||
|
||
html_user/
|
||
db.inc
|
||
info.php
|
||
team_join_action.php
|
||
team_quit_action.php
|
||
sched/
|
||
file_upload_handler.C
|
||
handle_request.C
|
||
|
||
Karl 2004-01-15
|
||
- fixed database schema for new 'teamid' field
|
||
- misc. fixes
|
||
|
||
db/
|
||
schema.sql
|
||
py/Boinc/
|
||
Makefile.am
|
||
database.py
|
||
lib/
|
||
Makefile.am
|
||
base64.C
|
||
base64.h
|
||
|
||
Karl 2004-01-15
|
||
- renamed user_name to db_user
|
||
|
||
- applied changes by Daniel Sumers Myers <dmyers@umiacs.umd.edu>
|
||
- setup script creates log_<host>
|
||
- add support for <db_user> field in config.XML in C, python, php
|
||
- missing default project.inc.sample fields
|
||
|
||
db/
|
||
db_base.C
|
||
db_base.h
|
||
html_ops/
|
||
db_ops.inc
|
||
db.inc
|
||
project.inc.sample
|
||
py/Boinc/
|
||
setup_project.py
|
||
sched/
|
||
assimilator.C
|
||
db_dump.C
|
||
feeder.C
|
||
file_deleter.C
|
||
main.C
|
||
make_work.C
|
||
transitioner.C
|
||
update_stats.C
|
||
validate.C
|
||
wu_check.C
|
||
|
||
David Jan 16 2004
|
||
- released core client 2.18 for Windows
|
||
|
||
David Jan 17 2004
|
||
- change logic in windows_opengl.C so that an app has no window
|
||
when it doesn't need one.
|
||
In particular, it has no window when it initially runs,
|
||
so it won't wake up screensaver when an app starts.
|
||
This requires using a window-less timer
|
||
to poll for messages from core client.
|
||
|
||
api/
|
||
windows_opengl.C
|
||
|
||
David Jan 17 2004
|
||
- remove win_main.cpp
|
||
- if result exceeds disk, show both usage and limit
|
||
- change title of Attach to Project dialog
|
||
- change debugging symbol from DEBUG to SS_DEBUG
|
||
(since VC7.0 equates _DEBUG and DEBUG)
|
||
|
||
client/
|
||
app.C
|
||
win_main.cpp (removed)
|
||
win/
|
||
resource.rc
|
||
win_build/
|
||
boinc_gui.vcproj
|
||
|
||
David Jan 17 2004
|
||
- new screensaver (from Rom Walton)
|
||
works correctly on multiple monitors;
|
||
handles password protection correctly
|
||
- fix compile warnings
|
||
- removed redundant definition of BOINC_SS_END
|
||
|
||
client/
|
||
cs_benchmark.C
|
||
net_xfer.C
|
||
win/
|
||
Scricon3.ico (removed)
|
||
boinc_ss.h (new)
|
||
boinc_ss.rc
|
||
win_main.cpp (removed)
|
||
win_screensaver.cpp
|
||
win_screensaver.h (new)
|
||
win_util.h
|
||
wingui_listcrl.cpp
|
||
wingui_mainwindow.cpp
|
||
wingui_piectrl.cpp
|
||
res/
|
||
Scricon3.ico (new)
|
||
lib/
|
||
app_ipc.h
|
||
win_build/
|
||
boinc.vcproj
|
||
boinc_cli.vcproj
|
||
boinc_ss.vcproj
|
||
|
||
David Jan 17 2004
|
||
- use TRACE() instead of fprintfs for debugging output
|
||
|
||
client/win/
|
||
wingui_mainwindow.cpp
|
||
|
||
David Jan 18 2004
|
||
- fix possible memory leak in screensaver on Win9x (from Rom Walton)
|
||
|
||
client/win/
|
||
win_screensaver.cpp,h
|
||
|
||
David Jan 18 2004
|
||
- add a function HOST::fix_nans(), called before updating or inserting
|
||
a host record; replaces NaNs with zeros. Otherwise DB barfs
|
||
- on any failed DB query, write the query to stderr
|
||
- store sorting order for message boards in a cookie
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
db_base.C
|
||
html_user/forum/
|
||
forum.php
|
||
thread.php
|
||
sched/
|
||
file_upload_handler.C
|
||
handle_request.C
|
||
|
||
David Jan 19 2004
|
||
- use STOP_SS_MSG symbol instead of END_SS_MSG
|
||
(these redundantly refered to the same string)
|
||
- fixed buggy error-handling code for Win CreateProcess()
|
||
|
||
api/
|
||
windows_opengl.C
|
||
client/
|
||
app.C
|
||
win/
|
||
win_util.h
|
||
lib/util.C
|
||
|
||
David Jan 19 2004 (from Rom Walton)
|
||
- Win screensaver: check to see if BOINC is configured for
|
||
automatic startup and if not make a suggestion to the user to do so.
|
||
|
||
client/win/
|
||
boinc_ss.h
|
||
boinc_ss.rc
|
||
win_screensaver.cpp,h
|
||
win_util.cpp,h
|
||
|
||
David Jan 19 2004 (from Rom Walton)
|
||
- handle BOINC core client as service
|
||
|
||
client/
|
||
client_state.C,h
|
||
cs_cmdline.C
|
||
main.C
|
||
win/
|
||
win_net.cpp
|
||
win_service.cpp,h (new)
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
boinc_ss.vcproj
|
||
|
||
David Jan 19 2004
|
||
- modify logic of file_upload_handler so that it always
|
||
returns an HTML header, regardless of whether
|
||
request message is missing or malformed
|
||
- hyperlink results on pending credit page
|
||
- fix bug in parsing of exit status in result stderr_out
|
||
- include "validate_trivial" in install_boinc_files()
|
||
|
||
html_user/
|
||
index.php
|
||
pending.php
|
||
py/Boinc/
|
||
setup_project.py
|
||
sched/
|
||
file_upload_handler.C
|
||
handle_request.C
|
||
|
||
David Jan 20 2004
|
||
- added basic support for GUI RPCs in the core client.
|
||
This allows GUIs to be implemented in a separate process.
|
||
There can be multiple GUIs looking at the same core client.
|
||
New classes:
|
||
GUI_RPC_CONN: represents a connection to a GUI program
|
||
GUI_RPC_CONN_SET: represents the set of all such connections
|
||
has the usual poll() function.
|
||
This is currently implemented only for UNIX, using UNIX domain sockets.
|
||
Should be straightforward to do in Win using named pipes.
|
||
- The isspace() macro crashes if called with a non-ASCII arg,
|
||
so use it only after isascii()
|
||
- reimplement strip_whitespace() to do the above,
|
||
have it trim at both start and end,
|
||
and make a version for string
|
||
NOTE: the real problem is that user-supplied text is being
|
||
kept in XML elements in the state file.
|
||
Should escape it.
|
||
|
||
client/
|
||
Makefile.am,in
|
||
client_state.C,h
|
||
gui_rpc_client.C,h (new)
|
||
gui_rpc_server.C,h (new)
|
||
gui_test.C
|
||
|
||
lib/
|
||
parse.C
|
||
util.C,h
|
||
|
||
David Jan 21 2004
|
||
- get new GUI RPC stuff to compile on Win
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
win_build/
|
||
boinc.sln
|
||
boinc_cli.vcproj
|
||
boinc_gui.vcproj
|
||
|
||
Eric Jan 21 2004
|
||
- Modified match_tag to work with tags of the form "<tag>" and "tag"
|
||
- Added strlcat() to std_fixes.h
|
||
- Added check for strlcat() configure.ac
|
||
- fixed "#elif" without clause in main.C
|
||
|
||
configure
|
||
configure.ac
|
||
config.h.in
|
||
client/
|
||
main.C
|
||
lib/
|
||
parse.C
|
||
std_fixes.h
|
||
|
||
Karl 2004-01-21
|
||
Client translations update from Robi Beucheler
|
||
|
||
client/translation/
|
||
language.ini.ca
|
||
language.ini.es
|
||
language.ini.et
|
||
language.ini.gl
|
||
language.ini.hr
|
||
language.ini.ko
|
||
language.ini.pl
|
||
language.ini.pt
|
||
language.ini.template
|
||
language.ini.th (new)
|
||
language.ini.tr (new)
|
||
|
||
David Jan 21 2004
|
||
- small changes to get console version to compile
|
||
|
||
client/
|
||
cs_cmdline.C
|
||
main.C
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
|
||
David Jan 22 2004
|
||
- match_tag() changes broke Win compile.
|
||
Moved new match_tag() to xml_match_tag() in xml_util.C,
|
||
put old match_tag() back.
|
||
|
||
lib/
|
||
util.C,h
|
||
xml_util.C,h
|
||
|
||
David Jan 22 2004
|
||
- change the GUI RPC protocol so that there's a single
|
||
<get_state/> request that returns the entire state
|
||
(same contents as the client state file)
|
||
- add fraction_done, current_cpu_time to <active_task> output
|
||
- factored out CLIENT_STATE::write_state(FILE*)
|
||
(used for both state file write and GUI RPC)
|
||
- always copy team name from scheduler reply
|
||
(so that we'll learn if user quits team)
|
||
|
||
client/
|
||
app.C
|
||
client_state.h
|
||
cs_scheduler.C
|
||
cs_statefile.C
|
||
gui_rpc_client.C,h
|
||
gui_rpc_server.C
|
||
gui_test.C
|
||
|
||
David Jan 23 2004
|
||
- fix problem with DLL dependency (from Rom Walton)
|
||
|
||
api/
|
||
boinc_api.C
|
||
graphics_api.C
|
||
gutil.C
|
||
windows_opengl.C
|
||
lib/
|
||
parse.C
|
||
util.C
|
||
|
||
David Jan 23 2004
|
||
- Fleshed out client-side support for GUI RPCs
|
||
The GUI_RPC class now parses the XML it gets back from
|
||
the <get_state> request, and builds a data structure
|
||
that is more or less a clone of the state of the core client.
|
||
There are still a number of missing pieces,
|
||
e.g. active tasks and file transfers
|
||
|
||
client/
|
||
cs_apps.C
|
||
gui_rpc_client.C,h
|
||
gui_test.C
|
||
makefile.gui_test (new)
|
||
|
||
David Jan 24 2004
|
||
- add resource to let you control name of screensaver in
|
||
choose-screensaver popup (from Rom Walton)
|
||
|
||
client/win/
|
||
boinc_ss.h
|
||
boinc_ss.rc
|
||
|
||
David Jan 26 2004
|
||
- server-side support for anonymous platform mechanism
|
||
- struct CLIENT_APP_VERSION represents an app version
|
||
that an anonymous-platform client says it has
|
||
- SCHEDULER_REQUEST has a vector of CLIENT_APP_VERSIONs,
|
||
parsed from request message
|
||
- in scan_work_array(): if anonymous platform,
|
||
instead of checking for an app version in the DB,
|
||
check that the client has an app version with an
|
||
acceptable version#
|
||
|
||
NOTE: for this to work you need to add an entry named "anonymous"
|
||
to the platform table
|
||
|
||
html_user/
|
||
index.php
|
||
team_join_form.php
|
||
team_quit_form.php
|
||
sched/
|
||
handle_request.C
|
||
server_types.C,h
|
||
|
||
David Jan 26 2004
|
||
- client-side support for anonymous platform mechanism
|
||
- To use this mechanism, user puts a file "app_info.xml" in a project dir.
|
||
This file contains <app>, <file_info>, and <app_version> elements
|
||
for app versions present in the project dir
|
||
(compiled or manually installed by the user).
|
||
- If this file is found, the project is marked as "anonymous_platform"
|
||
and app/app_version info in the state file is ignored.
|
||
- Scheduler RPCs for anonymous projects include a list of app_versions
|
||
- CLIENT_STATE::link_*(): fail if object is already in state
|
||
|
||
client/
|
||
client_state.C,h
|
||
client_types.C,h
|
||
cs_scheduler.C
|
||
cs_statefile.C
|
||
file_names.h
|
||
lib/
|
||
error_numbers.h
|
||
|
||
David Jan 30 2004
|
||
- replaced a bunch of "return 1"s with meaningful codes
|
||
(mostly ERR_NOT_FOUND); fixed comments; added license text here and there
|
||
client/
|
||
app.C
|
||
client_state.C
|
||
cs_apps.C
|
||
cs_cmdline.C
|
||
cs_files.C
|
||
cs_prefs.C
|
||
cs_scheduler.C
|
||
file_xfer.C
|
||
gui_rpc_server.C,h
|
||
http.C
|
||
message.C
|
||
net_stats.C
|
||
net_xfer.C
|
||
pers_file_xfer.C
|
||
doc/
|
||
account.php
|
||
lib/
|
||
app_ipc.C
|
||
error_numbers.h
|
||
|
||
David Jan 30 2004
|
||
- mark result as OUTCOME_SUCCESS only if exit status is zero (from Rom Walton)
|
||
|
||
sched/
|
||
handle_request.C
|
||
|
||
David Jan 31 2004
|
||
- GUI RPC: get_state RPC now returns active tasks and file xfers
|
||
- remove "hostname" field from HTTP_OP.
|
||
There was already a field of this name in NET_XFER,
|
||
a base class of HTTP_OP.
|
||
|
||
client/
|
||
client_types.C
|
||
gui_rpc_client.C,h
|
||
gui_rpc_server.C
|
||
http.h
|
||
net_xfer.C,h
|
||
pers_file_xfer.C
|
||
makefile.gui_test
|
||
|
||
David Feb 2 2004
|
||
- escape all user-supplied text in XML (messages and files)
|
||
e.g. user name, team name
|
||
- added functions xml_escape() and xml_unescape()
|
||
(very simple versions; just escape < and &)
|
||
- parse_str() does unescape
|
||
|
||
client/
|
||
client_types.C
|
||
lib/
|
||
parse.C,h
|
||
sched/
|
||
server_types.C
|
||
|
||
David Feb 2 2004
|
||
- changed directory structure of HTML stuff
|
||
|
||
Rom Feb 2 2004
|
||
- Added a diagnostics library for project clients
|
||
Currently only windows specific stuff has been implemented for the
|
||
BOINCASSERT and BOINCTRACE.
|
||
BOINCASSERT has been defined as an ASNI C assert
|
||
for all other platforms.
|
||
|
||
boinc_trace(), boinc_diag_init(), and boinc_diag_cleanup()
|
||
need to be defined for all the other platforms.
|
||
- Moved stderr redirection into boinc_diag_init() for the Windows client.
|
||
|
||
api/
|
||
boincdiag.cpp,h (Added)
|
||
boinc_api.c
|
||
|
||
Rom Feb 3 2004
|
||
- Fixed warning while compiling with gcc.
|
||
|
||
api/
|
||
boincdiag.cpp,h
|
||
|
||
David Feb 3 2004
|
||
- removed pathMod arguments in PHP code (this was needed when we had
|
||
multi-level directory structure; not needed anymore)
|
||
- changed max_wus_to_send from a compile constant to a config.xml parameter
|
||
|
||
html/
|
||
forum/
|
||
post.php
|
||
rate.php
|
||
reply.php
|
||
subscribe.php
|
||
inc/
|
||
db.inc
|
||
subscribe.inc
|
||
util.inc
|
||
sched/
|
||
handle_request.C
|
||
sched_config.C,h
|
||
|
||
David 2004-02-03
|
||
BOINC 2.23 release for Windows
|
||
|
||
Karl 2004-02-03
|
||
- updates for html directory structure change
|
||
|
||
tools/
|
||
make_project
|
||
|
||
py/Boinc/
|
||
setup_project.py
|
||
|
||
html/
|
||
project.sample/ (new directory)
|
||
project.inc (new)
|
||
project_specific_prefs.inc (new)
|
||
|
||
html/
|
||
user/
|
||
project.inc.sample (removed)
|
||
project_specific_prefs.inc (removed)
|
||
|
||
Rom Feb 4 2004
|
||
- Fixed the windows_error_string routine so it'll report back windows system errors.
|
||
- Updated the CreateProcess part of app.c to report OS Errors based on the above funtion.
|
||
- Removed the seperate header blocks for both release and debug and made them the same.
|
||
clears up one customer bug on Windows NT 4.0 platforms
|
||
- Changed the 1400 version check in stackwalker.h to 1310 which is what the 7.1 compiler
|
||
version is really.
|
||
- Changed the service routines to use windows_error_string instead of GetSystemErrorText
|
||
|
||
client/
|
||
app.c
|
||
client
|
||
win/
|
||
stackwalker.h
|
||
win_screensaver.h
|
||
win_service.cpp
|
||
lib/
|
||
util.c,h
|
||
|
||
Rom Feb 4 2004
|
||
- Changed from using SHGetSpecialFolder to SHGetFolderPath which now uses COM and so will
|
||
will not throw a dynamic link error on startup for platforms that don't support it.
|
||
|
||
client
|
||
win/
|
||
win_screensaver.cpp
|
||
|
||
David Feb 4 2004
|
||
- BOINC API: if get a REREAD_PREFS message from core client,
|
||
only call the app's reread_prefs function if there's a window open
|
||
(the SETI@home reread_prefs function goes into an infinite loop
|
||
if there's not a window open)
|
||
- change copyright year to 2004
|
||
|
||
api/
|
||
windows_opengl.C
|
||
client/win/
|
||
resource.rc
|
||
|
||
Karl 2004-02-03
|
||
- more misc. make_project fixes
|
||
|
||
David Feb 4 2004
|
||
- define a destructor for ACTIVE_TASK.
|
||
Do all resource deallocation (close thread/proc/msg handles;
|
||
detach and/or destroy shmem) here.
|
||
This deallocation was being done piecemeal;
|
||
for example, it wasn't being done if the process was aborted.
|
||
Hence the "quit message" object was still there,
|
||
and when another process started in the same slot it would
|
||
immediately get the message (caused "reset project" problem)
|
||
- Eventually delete all ACTIVE_TASK objects.
|
||
The following removed them from the list but didn't deleting:
|
||
ACTIVE_TASK_SET::abort_project()
|
||
ACTIVE_TASK_SET::restart_tasks() (failure case)
|
||
- Don't ask for work if we have any unfinished work.
|
||
This is a temporary kludge to prevent repeated work requests;
|
||
it means that min work buffer is meaningless.
|
||
But maybe this is OK.
|
||
|
||
client/
|
||
app.h,C
|
||
cs_scheduler.C
|
||
|
||
David Feb 4 2004
|
||
- Cleaned up the project-reset logic a little:
|
||
- first garbage-collect, THEN unlink and delete the apps and app_versions
|
||
- When detach project, delete FILE_INFO*s.
|
||
|
||
NOTE: there are lots of loose ends, e.g. files/sockets left open etc.
|
||
|
||
client/
|
||
client_state.C
|
||
|
||
David Feb 4 2004
|
||
- Released version 2.24 of core client
|
||
|
||
Rom Feb 4 2004
|
||
- When handled errors occur provide the translated error message as well as the
|
||
error code.
|
||
|
||
client/
|
||
app.c
|
||
|
||
Rom Feb 4 2004
|
||
- Update the debugging page with some more useful information about what we need
|
||
when a crash occurs
|
||
|
||
html/user/
|
||
debug.php
|
||
|
||
Rom Feb 5 2004
|
||
- Microsofts documentation on the matter of SHGetFolderPath seems to be wrong.
|
||
instead of relying on it, just do a dynamic link and call the function
|
||
if successful.
|
||
|
||
client/win/
|
||
win_screensaver.cpp
|
||
|
||
David Feb 5 2004
|
||
- db_dump: files ordered by ID now have a fixed-size ID range,
|
||
not a fixed # of elements
|
||
- Changed FEASIBLE_COUNT parameters to very large values,
|
||
so that results are never classified as COULDNT_SEND.
|
||
This mechanism is not needed for SETI@home (all results are the same)
|
||
and is occasionally screwing things up.
|
||
Can revisit this later.
|
||
- Make "host" web links consistent ("---" if ID is zero)
|
||
- In UOTD browse, show only profiles w/ pics
|
||
|
||
html/
|
||
inc/
|
||
host.inc
|
||
result.inc
|
||
util.inc
|
||
ops/
|
||
profile_ops.php
|
||
sched/
|
||
db_dump.C
|
||
feeder.C
|
||
handle_request.C
|
||
sched_shmem.h
|
||
|
||
David Feb 5 2004
|
||
- My checkin of Jan 31 broke access via HTTP proxies.
|
||
Here's an attempt to fix it
|
||
|
||
client/
|
||
http.C,h
|
||
net_xfer.C,h
|
||
pers_file_xfer.C
|
||
|
||
David Feb 5 2004
|
||
- skip over <file_xfer> elements while parsing <file_info>
|
||
(they're there for the benefit of GUI RPC)
|
||
- removed old TRACEs from Win code
|
||
|
||
client/
|
||
client_types.C
|
||
win/
|
||
wingui_mainwindow.cpp
|
||
|
||
Rom Feb 5 2004
|
||
- Moved the unhandled exception filter back into boinc_api.c where it was orginally.
|
||
- Moved stackwalker that is used by BOINC Client applications into api folder since
|
||
the unhandled exception filter depends on it.
|
||
- Removed the unhandled exception filter init code from boincdiag.cpp
|
||
|
||
api/
|
||
boinc_api.c
|
||
boincdiag.cpp
|
||
api/win/
|
||
stackwalker.cpp,h (Added)
|
||
|
||
Rom Feb 6 2004
|
||
- Removed boincdiag.cpp,h from build and encorporated all its functionality into
|
||
boinc_api.c, h
|
||
- Improved unhandled exception filter to handle STACK_OVERFLOW exceptions, using
|
||
new stackwalker code base, STACK_OVERFLOWs would have caused a nested
|
||
exception issue that would have masked the real error.
|
||
- Improved unhandled exception filter to handle ACCESS_VIOLATIONs better, using
|
||
stackwalker code base, giving some of the same information for release builds
|
||
that is given in debug builds
|
||
- Created a new macro called BOINCERROR which will trip the management thread into
|
||
gracefully exiting the process with the correct exit code. This macro will work
|
||
across debug/release builds. Some more work has to go into the base function,
|
||
hopefully in tomorrow.
|
||
|
||
api/
|
||
boinc_api.c,h
|
||
boincdiag.cpp,h (deleted)
|
||
|
||
David Feb 6 2004
|
||
- changed default min/max work buffers from (1,3) to (.1, 1)
|
||
|
||
html/incs/
|
||
prefs.inc
|
||
|
||
David Feb 6 2004
|
||
- ask for more work when # of results in progress is less than # CPUs
|
||
- when get an APP_VERSION in a scheduler reply that's already in client state,
|
||
DON'T update the client state (it can't be any different anyway)
|
||
This fixes a garbage-collection crash
|
||
- Win client: added check_state.C to the project.
|
||
You can call check_all() to verify the integrity of client data.
|
||
This is commented out but useful for debugging.
|
||
- FILE_XFER_SET::insert() adds item to list, even if the underlying
|
||
HTTP_OP::insert() fails (because can't connect, e.g.)
|
||
This is necessary to make sure that the FILE_XFER remains in the
|
||
FILE_XFER_SET even in case of error, so that check_all() works.
|
||
|
||
NOTE: the semantics of insert() should be reexamined through the whole
|
||
FSM stack. Does it initialize? Is it guaranteed to insert?
|
||
Need consistency.
|
||
|
||
client/
|
||
check_state.C
|
||
client_state.C,h
|
||
cs_scheduler.C
|
||
file_xfer.C
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
boinc_gui.vcproj
|
||
|
||
David Feb 6 2004
|
||
- Windows core client 2.25 release
|
||
|
||
David Feb 6 2004
|
||
- API: is we're not using shared memory,
|
||
then app_client_shm is NULL (not app_client_shm->shm)
|
||
- add constructor for APP_CLIENT_SHM
|
||
|
||
api/
|
||
boinc_api.C,h
|
||
lib/
|
||
app_ipc.C,h
|
||
|
||
Rom Feb 6 2004
|
||
- When reporting exit codes of the project application to the DB,
|
||
use the exit code that was reported from the application
|
||
instead of the value from GetLastError()
|
||
|
||
lib/
|
||
util.c,h
|
||
client/
|
||
app.c
|
||
|
||
David Feb 8 2004
|
||
- reorganized "Creating a BOINC project" and "Getting work done"
|
||
parts of docs
|
||
doc/
|
||
anonymous_platforms.php
|
||
assimilate.php (new)
|
||
back_end.php (removed)
|
||
backend_functions.php (removed)
|
||
backend_logic.php (new)
|
||
backend_programs.php
|
||
boinc_dev.php
|
||
build_system.php
|
||
configuration.php (new)
|
||
create_project.php
|
||
database.php
|
||
docutil.php
|
||
make_project.php
|
||
platform.php
|
||
server_components.php
|
||
software.php
|
||
tool_start.php
|
||
tool_xadd.php
|
||
tools_work.php
|
||
validate.php
|
||
web_site.php (removed)
|
||
|
||
David Feb 9 2004
|
||
- Scheduler: when last work request was too recent,
|
||
send request_delay to tell client to wait (from Jens)
|
||
- code that generates user profile gallery pages (inc/gallery.inc)
|
||
has a nightmare of hardwired URL and path names.
|
||
I unraveled things enough to make them work again.
|
||
Should revisit at some point.
|
||
- page_tail() wasn't working when writing to files
|
||
|
||
html/
|
||
inc/
|
||
gallery.inc
|
||
profile.inc
|
||
util.inc
|
||
ops/
|
||
gallery.inc (removed)
|
||
project.sample/
|
||
project.inc
|
||
user/
|
||
debug.php
|
||
profile_menu.php
|
||
project.inc.sample
|
||
sched/
|
||
handle_request.C
|
||
|
||
David Feb 9 2004
|
||
- ACTIVE_TASK_SET::poll(): set state file dirty flag whenever the
|
||
set of active tasks changes (e.g. app exited).
|
||
- rename ACTIVE_TASK::abort() to abort_task() (eliminate ambiguity)
|
||
- ACTIVE_TASK_SET::check_rsc_limits_exceeded():
|
||
check only running tasks
|
||
- CLIENT_STATE::reset_project(): don't delete apps, app_versions
|
||
if project is anonymous-platform
|
||
- PROJECT::set_min_rpc_time(): don't change min_rpc_time
|
||
if it's already later than requested time (from Jens)
|
||
|
||
client/
|
||
app.C,h
|
||
client_state.C
|
||
cs_scheduler.C
|
||
|
||
David Feb 11 2004
|
||
- updated docs
|
||
- "request_delay" from server overrides exponential backoff
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
|
||
David Feb 15 2004
|
||
- updated docs
|
||
- make_project:
|
||
use short hostname
|
||
shorten instructions at end
|
||
- add a sample project.xml
|
||
- scheduler: write log debug msg when set result.outcome
|
||
- setup_project.py and make_project:
|
||
add copy of "create_work"
|
||
make symbolic link of html/user_profile to itself
|
||
don't capitalize long name
|
||
- parse_attr(): don't modify const input string
|
||
- XML error in client: </hostname/>
|
||
|
||
doc/
|
||
(many files)
|
||
lib/
|
||
parse.C
|
||
sched/
|
||
handle_request.C
|
||
tools/
|
||
create_work.C
|
||
project.xml (new)
|
||
make_project
|
||
py/Boinc/
|
||
database.py
|
||
setup_project.py
|
||
|
||
David Feb 16 2004
|
||
- removed references to Workseq table from python code
|
||
- commented out shutdown()s in http.C.
|
||
These seemed to be causing problems.
|
||
- doc updates
|
||
|
||
client/
|
||
http.C
|
||
html/user/
|
||
index.php
|
||
stats.php
|
||
doc/
|
||
(various)
|
||
py/Boinc/
|
||
database.py
|
||
db_mid.py
|
||
|
||
David Feb 16 2004
|
||
- enable the min_core_version attribute of app_version:
|
||
don't send a result to a host whose core version is too low.
|
||
(Note: this is a no-op unless you set min_core_version
|
||
to something nonzero).
|
||
If a host isn't sent any work because of this,
|
||
send a message suggesting upgrade
|
||
- Core client: put an <exit_status> element at the top level of <result>,
|
||
not within <stderr_out>
|
||
- Scheduler: parse <exit_status> from within <result>
|
||
Also parse it within <stderr_out> for backwards compat
|
||
- Client state file not parsed correctly when it contained a <file_xfer>
|
||
(because of active file xfer).
|
||
- add uniqueness constraints for category and forum
|
||
- add a script to set up initial categories and forums
|
||
|
||
client/
|
||
client_state.C
|
||
client_types.C
|
||
db/
|
||
constraints.sql
|
||
html/ops/
|
||
create_forums.php (new)
|
||
sched/
|
||
handle_request.C
|
||
sched_shmem.C
|
||
server_types.C
|
||
|
||
Rom Feb 19 2004
|
||
- Removed #ifdef around stackwalker dump so it'll dump release builds as well
|
||
|
||
api/
|
||
boinc_api.C
|
||
|
||
David Feb 19 2004
|
||
- FILE_XFER_SET::insert(): check for error BEFORE inserting in set.
|
||
- fix time zone display
|
||
|
||
client/
|
||
file_xfer.C
|
||
http.C
|
||
doc/
|
||
(various)
|
||
html/inc/
|
||
host.inc
|
||
|
||
Jeff Feb 19 2004
|
||
- CVS tagged as seti_boinc_app_release_2_25.
|
||
|
||
Rom Feb 23 2004
|
||
- Removed stackwalkers exception description so duplicate information is not logged.
|
||
|
||
api/win/
|
||
stackwalker.cpp
|
||
|
||
Karl 2004-02-23
|
||
- cookbook changes
|
||
|
||
doc/
|
||
project_cookbook.php
|
||
|
||
Rom Feb 23 2004
|
||
- New projects were failing to be able to make profiles. Added a bunch of defines
|
||
to project.inc that are now required.
|
||
- Updated the schema.sql file to include columns that are now required.
|
||
- Changed URL handling to include URL_BASE before quite a few relative links.
|
||
Basically PROFILE_PATH was being used for URL generation instead of URL_BASE +
|
||
IMAGE_URL|PROFILE_URL.
|
||
|
||
db/
|
||
schema.sql
|
||
html/inc/
|
||
forum.inc
|
||
gallery.inc
|
||
html/project.sample/
|
||
project.inc
|
||
user/
|
||
profile_menu.php
|
||
|
||
Jeff Feb 25 2004
|
||
- CVS tagged as seti_boinc_app_release_2_26. This tag is a little late but
|
||
the sources should be little if any changed.
|
||
|
||
David Feb 28 2004
|
||
- change page_head() so that it doesn't try to find user
|
||
when being used for offline page generation
|
||
|
||
html/inc/
|
||
gallery.inc
|
||
host.inc
|
||
util.inc
|
||
|
||
David Feb 28 2004
|
||
- added some #includes for freeBSD compile
|
||
|
||
David Feb 28 2004
|
||
- made some stuff const
|
||
- added new GUI RPCs (for control)
|
||
- added GUI RPCs for Windows
|
||
NOTE: pipes don't work on Win. need to change to TCP
|
||
|
||
client/
|
||
client_state.C,h
|
||
cs_account.C
|
||
gui_rpc_server.C
|
||
doc/
|
||
gui_rpc.php
|
||
|
||
David Feb 28 2004
|
||
- (from Rom) fixes a bug reported by Matze in the forums
|
||
where after an explorer crash the BOINC GUI doesn't re-register itself with
|
||
the new explorer.
|
||
|
||
client/win/
|
||
wingui_mainwindow.cpp,h
|
||
|
||
Rom Feb 28 2004
|
||
- Added boinc_diagnostics.c,.h, boinc_exceptions.c,.h. Not included in the build yet,
|
||
but needed to snapshot the source.
|
||
- Fixed a bug where on Windows we were not really waiting for three seconds before
|
||
a retry. This is done for both reads and writes since on Windows there is a notion
|
||
of exclusive reads which would make successive read requests fail as well.
|
||
|
||
api/
|
||
boinc_diagnostics.C, .h (added)
|
||
boinc_exception.C, .h (added)
|
||
lib/
|
||
filesys.C
|
||
|
||
David Feb 29 2004
|
||
- check for "w", "a" in boinc_fopen()
|
||
|
||
lib/
|
||
filesys.C
|
||
|
||
Rom Mar 1 2004
|
||
- Retry on all boinc_fopen operations
|
||
- added boinc_file_exists()
|
||
|
||
client/
|
||
app.c
|
||
cs_scheduler.c
|
||
cs_statefile.c
|
||
log_flags.c
|
||
lib/
|
||
filesys.C, .h
|
||
|
||
David Mar 1 2004
|
||
- compile errors
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
|
||
Rom Mar 1 2004
|
||
- Update project files so they'll build symbol files for release builds
|
||
- Remove the name collision between boinc.scr and boinc.dll as far as symbol
|
||
generation goes
|
||
- updated uppercase so it'll build again
|
||
|
||
winbuild/
|
||
boinc_cli.vsproj
|
||
boinc_dll.vsproj
|
||
boinc_gui.vsproj
|
||
boinc_ss.vsproj
|
||
upper_case.vsproj
|
||
|
||
Rom Mar 2 2004
|
||
- Get the complete version string for the Windows OS and include Service Pack
|
||
Information if any exist. An example is below:
|
||
<os_name>Microsoft Windows 2003 Standard Server Edition (Build 3790)</os_name>
|
||
- #ifdef out the GUI RPC stuff on Windows for right now, causes a crash on startup.
|
||
|
||
client/
|
||
client_state.C
|
||
client/win/
|
||
hostinfo_win.cpp
|
||
|
||
Rom Mar 2 2004
|
||
- Update version Resouces to version 2.26 for the Windows release.
|
||
|
||
client/win/
|
||
boinc_ss.rc
|
||
resource.rc
|
||
win_config.h
|
||
|
||
Rom Mar 2 2004
|
||
- CVS tagged as boinc_app_release_2_26.
|
||
|
||
David Mar 3 2004
|
||
- added "using namespace std;" a couple places to fix bizarre
|
||
link problems on Windows
|
||
|
||
client/
|
||
parse.C
|
||
util.C
|
||
|
||
David Mar 3 2004
|
||
- "account key" -> "account ID" in the PHP code
|
||
|
||
html/
|
||
inc/
|
||
util.inc
|
||
user/
|
||
account_created.php
|
||
accountsetup_nonfirst_done.php
|
||
create_account_form.php
|
||
get-passwd.php
|
||
login_action.php
|
||
mail_passwd.php
|
||
|
||
Rom Mar 3 2004
|
||
- Some house keeping with the Windows sources
|
||
- All Windows binaries now have a version resource assigned to them.
|
||
- The Windows CLI should no longer need to have references to afxwin.h
|
||
- project file cleanup work to get rid of some warnings
|
||
|
||
client/
|
||
app.h
|
||
net_xfer.c
|
||
client/win/
|
||
boinc_ss.rc, .h
|
||
boinc_cli.rc, .h (added)
|
||
boinc_dll.rc, .h (added)
|
||
boinc_gui.rc, .h (added)
|
||
resource.rc, .h (removed)
|
||
update-resource-version
|
||
win_idle_tracker.def
|
||
win_net.cpp
|
||
wingui.h
|
||
wingui_mainwindow.cpp, .h
|
||
winbuild/
|
||
*.vcproj
|
||
boinc.vcproj (removed)
|
||
|
||
Rom Mar 4 2004
|
||
- Include file overhaul for the Windows platform
|
||
|
||
Basically the linker was linking Windows GUI resources into it because of various
|
||
references to afxwin.h, these have now been banished from the source tree except in
|
||
one location.
|
||
|
||
I added a header file called stdafx.h which contains all the includes for all the
|
||
system header files on Windows, each source file contains a pointer to stdafx.h.
|
||
|
||
stdafx.h contains conditional logic to switch between afxwin.h and windows.h depending
|
||
on whether or not _CONSOLE is defined.
|
||
|
||
Compiled Source Sizes: Debug Release
|
||
boinc_gui.exe (Before Changes) 1.732MB 328KB
|
||
boinc_cli.exe (Before Changes) 2.080MB Unknown
|
||
boinc.scr (Before Changes) 244KB 88KB
|
||
boinc.dll (Before Changes) 136KB 44KB
|
||
|
||
boinc_gui.exe (After Changes) 1.716MB 428KB
|
||
boinc_cli.exe (After Changes) 1.508MB 412KB
|
||
boinc.scr (After Changes) 188KB 116KB
|
||
boinc.dll (After Changes) 140KB 58KB
|
||
|
||
I pretty much touched all the source and header files. This checkin should not have any
|
||
effect on any platform other than Windows.
|
||
|
||
Rom Mar 4 2004 (from John Keck)
|
||
|
||
Edits to change when the client considers a result to be at its deadline
|
||
it was originally 6 hours as defined in _BASE
|
||
if I did this right it will use the connected fraction to modify that amount
|
||
a 100% connected client will use the base figure, a 0% connected client will
|
||
use the base figure times the multiplier in addition to the base figure.
|
||
The figures I have here will produce a maximum time before deadline of
|
||
18 hours. 6*2=12+6=18 for debugging that may be too much but
|
||
it may not be enough for release.
|
||
|
||
client/
|
||
client_state.h
|
||
cs_scheduler.c
|
||
|
||
Rom Mar 4 2004
|
||
- More Windows header file cleanup.
|
||
|
||
api/
|
||
boinc_api.c
|
||
mfile.c
|
||
client/
|
||
<Header files>
|
||
lib/
|
||
filesys.h
|
||
language.h
|
||
parse.h
|
||
util.h
|
||
|
||
Rom Mar 5 2004
|
||
- Include file overhaul for the Windows platform ( Part 2 )
|
||
|
||
Compiled Source Sizes: Debug Release
|
||
boinc_gui.exe (Before Changes) 1.732MB 328KB
|
||
boinc_cli.exe (Before Changes) 2.080MB Unknown
|
||
boinc.scr (Before Changes) 244KB 88KB
|
||
boinc.dll (Before Changes) 136KB 44KB
|
||
|
||
boinc_gui.exe (After Changes) 1.716MB 332KB
|
||
boinc_cli.exe (After Changes) 624KB 324KB
|
||
boinc.scr (After Changes) 188KB 88KB
|
||
boinc.dll (After Changes) 140KB 35KB
|
||
|
||
I pretty much touched all the source and header files. This checkin should not have any
|
||
effect on any platform other than Windows.
|
||
|
||
Rom Mar 5 2004 (from John Keck)
|
||
- Adjust default values to download minimum work-unit load until the client can
|
||
collect preferences from the server.
|
||
|
||
client/
|
||
perfs.c
|
||
|
||
Rom Mar 5 2004
|
||
- Add the Alpha project test team members names to the Contact Us page.
|
||
|
||
doc/
|
||
contact.php
|
||
|
||
Rom Mar 6 2004
|
||
- I am backing out a change by John Keck until a server RPC overload problem is fixed.
|
||
|
||
client/
|
||
cs_scheduler.c
|
||
|
||
Rom Mar 6 2004
|
||
- Changed the namespace references back to the orginal references so that the clients
|
||
will build on Solaris and Linux.
|
||
|
||
lib/
|
||
util.c, .h
|
||
|
||
Rom Mar 6 2004
|
||
- Updated the version setting code so that it will include the new file resources for Windows
|
||
|
||
/
|
||
set-verson
|
||
client/
|
||
makefile.am
|
||
client/win/
|
||
update-boinc-cli-version
|
||
update-boinc-dll-version
|
||
update-boinc-gui-version
|
||
update-boinc-ss-version
|
||
|
||
Jeff Mar 9 2004
|
||
- CVS tagged as boinc_app_release_2_27.
|
||
|
||
Rom Mar 9 2004
|
||
- Fix fatal error with the intro.php page because of missing function in project.inc
|
||
|
||
html/project.sample/
|
||
project.inc
|
||
html/user
|
||
info.php
|
||
|
||
Rom Mar 9 2004
|
||
- Windows Product SKU was being over-written if the person was running with Service Pack 6a.
|
||
|
||
client/win/
|
||
hostinfo_win.cpp
|
||
|
||
Rom Mar 11 2004
|
||
- Properly identify Windows Longhorn
|
||
|
||
client/win/
|
||
hostinfo_win.cpp
|
||
|
||
Rom Mar 11 2004 (for Thomas Horsten)
|
||
- Here is a patch that fixes CPU detection for Linux (i386) and adds CPU detection for MIPS.
|
||
It is not perfect (it's really the proc interface's fault), but at least it is a lot better
|
||
than what is there now.
|
||
|
||
|
||
client/
|
||
hostinfo_unix.cpp
|
||
|
||
Jeff Mar 14 2004
|
||
- Another static/dynamic linking problem fixed by an ugly collect2
|
||
hack. It turns out that a statically linked linux client gets the
|
||
following warning at build time:
|
||
|
||
hostinfo.C:230: warning: Using 'gethostbyname' in statically
|
||
linked applications requires at runtime the shared libraries
|
||
from the glibc version used for linking
|
||
|
||
and sure enough, when such a client is run on a linux platform
|
||
with a incompatible glibc, we saw the following:
|
||
|
||
2004-03-12 11:07:57 [BOINC] Can't resolve hostname setiboinc
|
||
2004-03-12 11:07:57 [BOINC] Can't resolve hostname setiboinc
|
||
2004-03-12 11:07:57 [http://setiboinc/ap/] Couldn't read master
|
||
page for http://setiboinc/ap/: error -113
|
||
2004-03-12 11:07:57 [http://setiboinc/ap/] Couldn't read master
|
||
page for http://setiboinc/ap/: error -113
|
||
2004-03-12 11:07:57 [http://setiboinc/ap/] Detaching from project -
|
||
check for URL error
|
||
2004-03-12 11:07:57 [http://setiboinc/ap/] Detaching from project -
|
||
check for URL error
|
||
|
||
So we needed to link dynamically to libc but statically to libstdc++
|
||
(for reasons described elsewhere in these notes). The only way found
|
||
so far to do this is via a hand crafted collect2 line. That, and
|
||
not linking the client statically in a global fashion.
|
||
|
||
We should make the collect2 scripts adapt to the environment in
|
||
which they ar run. Or, better, figure out how to do this all
|
||
within configure/make.
|
||
|
||
- bumped version to 2.28.
|
||
|
||
configure.ac
|
||
configure
|
||
client
|
||
Makefile.am
|
||
Makefile.in
|
||
collect2_line_linux.csh new file
|
||
collect2_line_solaris.csh new file
|
||
collect2_line removed
|
||
|
||
Jeff Mar 15 2004
|
||
- CVS tagged boinc and seti_boinc as boinc_app_release_2_28.
|
||
|
||
Karl 2004-04-15
|
||
- fixed bug when files are copied to apps/ in different order
|
||
|
||
tools/
|
||
update_versions
|
||
|
||
David Mar 16 2004
|
||
- fleshed out trickle-message support a bit.
|
||
Separate notions of "trickle up" (client->server)
|
||
and "trickle down" (server->client) messages.
|
||
They're kept in different tables.
|
||
- added a program trickle_handler.C for handling trickle-up messages.
|
||
This is a framework program: you need to supply a handler function
|
||
- The scheduler sees if there are any trickle-down messages
|
||
for the host, and sends them
|
||
|
||
STILL TO BE DONE:
|
||
- server-side API for creating trickle-down messages
|
||
- client logic for delivering trickle-down messages
|
||
|
||
- fix bad mem size reporting on Mac w/ > 2GB mem
|
||
|
||
client/
|
||
hostinfo_unix.C
|
||
scheduler_op.C,h
|
||
db/
|
||
boinc_db.C,h
|
||
constraints.sql
|
||
doc/
|
||
contact.php
|
||
docutil.php
|
||
gui_rpc.php
|
||
software.php
|
||
trickle.php
|
||
validate.php
|
||
sched/
|
||
handle_request.C
|
||
sched_config.C,h
|
||
server_types.C,h
|
||
trickle_handler.C (new)
|
||
validate_test.C
|
||
validate_trivial.C
|
||
|
||
Rom Mar 16 2004
|
||
- Add back in support for Thomas's multi-proc protection aginst strcat for
|
||
vendor and CPU information
|
||
- Included the same multi-proc stuff for the x86
|
||
- Add JKecks change for changing when to report results based on the amount
|
||
of time the machine is connected onto the Internet.
|
||
- Added support for keeping a backup copy of stderr.txt and stdout.txt for
|
||
the previous session of BOINC in case it crashes.
|
||
|
||
client/
|
||
cs_scheduler.c
|
||
file_names.h
|
||
hostinfo_unix.c
|
||
client/win/
|
||
wingui_mainwindow.cpp
|
||
|
||
kevin 17 March 2004
|
||
checked in signal handling code. Uses sigaction. If signal is
|
||
originally ignored, do not handle signals.
|
||
|
||
David Mar 18 2004
|
||
- Remove "confirm executables" preference.
|
||
This is replaced by the anonymous platform mechanism.
|
||
|
||
client/
|
||
client_state.h
|
||
client_types.C,h
|
||
cs_apps.C
|
||
cs_files.C
|
||
main.C
|
||
prefs.C,h
|
||
html/inc/
|
||
prefs.inc
|
||
|
||
kevin 18 March 2004
|
||
- exit status of application set to nonzero value if there is an
|
||
uncaught signal.
|
||
client/
|
||
app.C
|
||
|
||
Rom Mar 18 2004
|
||
- Fixed a bug causing build problems for a customer in Australia, basically
|
||
we were trying to do some ANSI<->Unicode conversions that were not needed.
|
||
- sighandle.h does not need to include its contents on the Win32 platform
|
||
|
||
client/win/
|
||
wingui_dialog.cpp
|
||
lib/
|
||
sighandle.h
|
||
|
||
Jeff Mar 19 2004
|
||
BTW, here is how to buils the mac osx client/app in such a way that you
|
||
can specify the build name:
|
||
configure --build powerpc-apple-darwin
|
||
|
||
David Mar 19 2004
|
||
- small web-site fixes (e.g. you can now set your country to Cote d'Ivoire)
|
||
|
||
html/
|
||
inc/
|
||
download.inc
|
||
prefs.inc
|
||
util.inc
|
||
user/
|
||
host_edit_form.php
|
||
index.php
|
||
profile_menu.php
|
||
white.css
|
||
|
||
kevin March 19 2004
|
||
- Scheduler: don't handle partial requests
|
||
(i.e. missing </scheduler_request> tag)
|
||
lib/
|
||
error_numbers.h
|
||
sched/
|
||
server_types.C
|
||
handle_request.C
|
||
|
||
David Mar 20 2004
|
||
- Various changes to the way CPU benchmarking is done,
|
||
motivated by the need to make claimed credit constant across CPUs,
|
||
including "hyperthreaded" X86 CPUs
|
||
Old:
|
||
A single process runs the benchmark.
|
||
This gets 100% of the FPU on a HT CPU.
|
||
When 2 copies of an app are run,
|
||
they will each get 50% of the FPU,
|
||
so the claimed credit will be too high by a factor of 2.
|
||
New:
|
||
Run N copies of the benchmark in parallel,
|
||
where N is the number of CPUs reported by the OS
|
||
(e.g. twice the number of HT CPUs)
|
||
Average the results.
|
||
Revised interface:
|
||
start_cpu_benchmarks() starts up the N benchmark processes
|
||
cpu_benchmarks_poll() checks for completion
|
||
are_cpu_benchmarks_running() returns true iff running (doesn't poll)
|
||
abort_cpu_benchmarks() aborts processes
|
||
The set of running processes is maintained in an
|
||
array of BENCHMARK_DESC structures
|
||
Results are passed back in files in the Unix case,
|
||
where we use separate processes.
|
||
In the Windows case (where we use threads)
|
||
results are passed back in the BENCHMARK_DESC structure.
|
||
|
||
api/boinc_api.C
|
||
client/
|
||
Makefile.am
|
||
client_state.C,h
|
||
cs_apps.C
|
||
cs_benchmark.C
|
||
cs_prefs.C
|
||
file_names.h
|
||
gui_rpc_server.C
|
||
win/
|
||
wingui_mainwindow.cpp
|
||
doc/
|
||
various
|
||
lib/
|
||
sighandle.C
|
||
|
||
Rom Mar 22 2004
|
||
- Setup project clients so they report back possible memory leaks on exit and
|
||
validate the heap after every 1024 allocations.
|
||
- Define constant for stdout.txt
|
||
|
||
api/
|
||
boinc_api.c
|
||
lib/
|
||
app_ipc.h
|
||
|
||
kevin Mon Mar 22 2004
|
||
- ensure that </stderr_txt> is included in stderr_out,
|
||
even if stderr_out is too long.
|
||
client/
|
||
app.C
|
||
|
||
Rom Mar 22 2004
|
||
- Attempt to force load glut32.dll in a specific location,
|
||
if it fails catch the SEH exception and just disable grapgics.
|
||
|
||
api/
|
||
graphics_api.c
|
||
|
||
David Mar 22 2004
|
||
- Web: Show mod time when display global prefs
|
||
- Client: when write global prefs to a file,
|
||
tag with source project and scheduler only if not already tagged
|
||
(otherwise get multiple tags)
|
||
- Client messages: show source project and mod time of global prefs
|
||
- Web: show all date/time strings in same format, use UTC
|
||
- Client messages: don't list "BOINC" as a project.
|
||
Indicate non-project-specific by "---"
|
||
|
||
client/
|
||
app.C
|
||
cs_scheduler.C
|
||
main.C
|
||
prefs.C,h
|
||
win/
|
||
wingui.cpp
|
||
html/
|
||
inc/
|
||
prefs.inc
|
||
util.inc
|
||
user/
|
||
prefs_edit_form.php
|
||
lib/
|
||
util.C,h
|
||
|
||
kevin Mar 22 2004
|
||
- Scheduling server: we were failing to copy a result's exit_status
|
||
from the request message to the DB record.
|
||
So exit_status was always zero in the DB. Dooh!
|
||
|
||
sched/
|
||
handle_request.C
|
||
|
||
David Mar 22 2004
|
||
- Change the policy for propagating global preferences.
|
||
OLD: if a scheduler request message has newer prefs than
|
||
those in the DB, update the user record.
|
||
I.e. propagate prefs from hosts to projects
|
||
The problem with this: see bug #1164
|
||
NEW: Use whichever is more recent of the prefs in the
|
||
request msg and the prefs in the DB.
|
||
Don't update the prefs in the DB
|
||
|
||
sched/
|
||
handle_request.C
|
||
server_types.C
|
||
|
||
Jeff Mar 23 2004
|
||
- At check_pair() time, if the validator sees that the canonical result
|
||
is deleted, a message is sent to the validator log. Canonical result
|
||
deletion should only happen when all results for a WU are received
|
||
or expired.
|
||
|
||
sched/
|
||
validate.C
|
||
|
||
Rom Mar 23 2004
|
||
- client applications don't really need to dump leak detection information
|
||
for public consumption. So remark it out for public release.
|
||
|
||
api/
|
||
boinc_api.c
|
||
|
||
David Mar 23 2004
|
||
- Initial global prefs (as defined in GLOBAL_PREFS::init()) should
|
||
impose minimal restrictions, so that the client can do its first
|
||
scheduler RPC and get global prefs from a server
|
||
- Fix bug where benchmarks always run on Win client startup
|
||
- Improve startup and prefs messages
|
||
|
||
client/
|
||
client_state.C
|
||
client_types.C
|
||
cs_benchmark.C
|
||
prefs.C
|
||
|
||
David Mar 23 2004
|
||
- Turned off the entire "infeasible result" mechanism for now.
|
||
The recent usage of min_core_version was causing
|
||
lots of results to (undeservedly) get tagged as infeasible.
|
||
- Don't bump infeasible_count (or print message!)
|
||
if min_core_version is not met
|
||
|
||
sched/
|
||
handle_request.C
|
||
feeder.C
|
||
|
||
Rom Mar 24 2004
|
||
- Unify all diagnostics functionality under the same banner, SETI_BOINC,
|
||
BOINC_CLI, BOINC_GUI, upper_case now all initialize the BOINC Diagnostics
|
||
Library which sets up stdout and stderr redirection, heap corruption
|
||
detection, stackwalker for Windows, and stackalker fo *nix can be pluged
|
||
in and be automatically used by all applications.
|
||
- Taskbase#1131 -- closed
|
||
- Taskbase#1132 -- closed
|
||
|
||
api/
|
||
boinc_diagnostics.c, .h (removed)
|
||
boinc_exeception.c, .h (removed)
|
||
boinc_api.c, .h
|
||
api/win/
|
||
stackwalker.cpp, .h (removed)
|
||
apps/
|
||
upper_case.c
|
||
client/
|
||
file_names.h
|
||
main.c
|
||
stdafx.h
|
||
client/win/
|
||
wingui_mainwindow.cpp
|
||
lib/
|
||
diagnostics.c, .h (added)
|
||
exception.c, .h (added)
|
||
stackwalker_win.cpp, .h (added)
|
||
winbuild/
|
||
boinc_cli.vcproj
|
||
boinc_gui.vcproj
|
||
boinc_ss.vcproj
|
||
upper_case.vcproj
|
||
|
||
kevin Mar 24 2004
|
||
- class boinc_base_exception: changed order of initialization
|
||
in constructor so that initialization matches declaration.
|
||
|
||
lib/
|
||
exception.h
|
||
|
||
Rom Mar 24 2004
|
||
- I was a little to agressive in cleaning up boinc_api.c and removed some
|
||
signal handling code, added that back in.
|
||
- The new exceptions use string's, so include <string> in the exception header.
|
||
- gcc has stronger exception enforcement than mscl
|
||
|
||
api/
|
||
makefile.am
|
||
lib/
|
||
diagnostics.c
|
||
exception.c, .h
|
||
|
||
Rom Mar 24 2004
|
||
- Taskbase#1029 - graphics API bugs
|
||
* App graphics window sometimes becomes invisible
|
||
Not Repro
|
||
* App graphics window doesn't restore to original size
|
||
if you maximize, close window, and show graphics again.
|
||
Fixed
|
||
- When window is in minimized state switch the visibility flag to false
|
||
|
||
api/
|
||
windows_opengl.C
|
||
|
||
David Mar 24 2004
|
||
- change priority of "no work" messages in scheduler reply
|
||
from low to high
|
||
- remove "hide_email" field from profile table and associated web pages
|
||
(BOINC should never show email addresses)
|
||
|
||
html/inc/
|
||
profile.inc
|
||
sched/
|
||
handle_request.C
|
||
|
||
David Mar 24 2004
|
||
- check for the existence and correct size (but not checksum)
|
||
of a result's files (app_version and inputs)
|
||
before starting or restarting the app
|
||
If a file is deleted (e.g., manually by the user)
|
||
the core client should download it again before starting the app.
|
||
|
||
New function: FILE_INFO::verify_existing_file()
|
||
- various changes to get Unix client and apps to compile
|
||
with new diagnostics code
|
||
- diagnostics.C subsumes sighandle.C
|
||
|
||
NOTES:
|
||
- use int where possible
|
||
- all numeric error codes go in lib/error_numbers.h
|
||
- libboinc.a is to be used by applications only
|
||
(not client or server programs)
|
||
We can create a different lib for the latter,
|
||
but for now they use explicit .o's
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
Makefile.am
|
||
app.C
|
||
client_state.h
|
||
client_types.C,h
|
||
cs_apps.C
|
||
cs_files.C
|
||
main.C
|
||
html/inc/
|
||
util.inc
|
||
lib/
|
||
Makefile.am
|
||
diagnostics.C,h
|
||
error_numbers.h
|
||
sighandle.C,h (removed)
|
||
|
||
David Mar 24 2004
|
||
- get the above stuff working on Windows
|
||
|
||
client/
|
||
app.C
|
||
cs_apps.C
|
||
lib/
|
||
diagnostics.C,h
|
||
error_numbers.h
|
||
|
||
David Mar 24 2004
|
||
- add log flag to suppress file-size checking on app startup
|
||
|
||
client/
|
||
client_types.C
|
||
log_flags.C,h
|
||
|
||
Rom Mar 25 2004
|
||
- I have made SETI_BOINC Glut Free, Basically copied font code from glut
|
||
and put it into the glut folder.
|
||
- Removed Glut libraries
|
||
- Removed Delay Load technologies
|
||
|
||
api/
|
||
graphics_api.C
|
||
|
||
David Mar 25 2004
|
||
- Unix client: use semaphore instead of lockfile to prevent multiple copies
|
||
- rename boinc_init_diag() to boinc_init_diagnostics()
|
||
- rename boinc_execution_engine() to main_loop()
|
||
- add get_key() (to generate IPC key unique to a directory)
|
||
- replaced RETSIGTYPE with void
|
||
|
||
apps/
|
||
upper_case.C
|
||
client/
|
||
Makefile.am
|
||
client_types.h
|
||
cs_apps.C
|
||
main.C
|
||
lib/
|
||
diagnostics.C,h
|
||
error_numbers.h
|
||
synch.C,h
|
||
|
||
Jeff Mar 26 2004
|
||
- Release tags. Sources were tagged as seti_boinc_release_2_30 and then,
|
||
after some build problems were fixed,
|
||
were tagged as seti_boinc_release_2_30a.
|
||
The build from this latter tag was what was released
|
||
as app version 2.30.
|
||
|
||
David Mar 26 2004
|
||
- when show country select on web,
|
||
pre-populate based on client's IP (using GeoIP; from Janus)
|
||
- fix compile problem with semaphore code
|
||
|
||
html/
|
||
inc/
|
||
GeoIP.dat (new)
|
||
geoip.inc (new)
|
||
team.inc
|
||
util.inc
|
||
lib/
|
||
app_ipc.h
|
||
synch.C
|
||
user/
|
||
create_account_form.php
|
||
edit_user_info_form.php
|
||
|
||
David Mar 26 2004
|
||
- Give the PHP session mechanism a "path" (last component of project URL)
|
||
to disambiguate multiple projects on same host,
|
||
so you can log into both at once w/ separate cookies
|
||
(suggested by Janus)
|
||
- Change "Most often asked" to "Most frequently asked"
|
||
|
||
html/inc/
|
||
forum.inc
|
||
util.inc
|
||
|
||
Rom Mar 26 2004
|
||
- Fix a minor bug where after the screen saver shutdown BOINC would fire-up
|
||
a new SAH Window
|
||
- Fix a few build breaks in the Windows CC
|
||
- Tag for a 2.31 release.
|
||
|
||
api/
|
||
boinc_api.c
|
||
windows_opengl.c
|
||
client/
|
||
app.c
|
||
client/win/
|
||
wingui_mainwindow.cpp
|
||
lib/
|
||
app_ipc.c
|
||
|
||
Rom Mar 26 2004
|
||
- Update versions started to complain about PDB files,
|
||
so tell it to ignore them for determining platforms
|
||
|
||
tools/
|
||
update_versions
|
||
|
||
David Mar 26 2004
|
||
- combine RAC when merging hosts
|
||
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
user/
|
||
host_edit_action.php
|
||
|
||
Eric H Mar 27 2004
|
||
- added support for SOCKS4 and SOCKS5 proxy servers
|
||
- added a new PROXY layer between HTTP_OP and NET_XFER.
|
||
This layer takes care of the state transitions
|
||
involved in negotiating with a SOCKS server.
|
||
Support for editing SOCKS proxy server
|
||
information still needs to be completed in the Windows GUI.
|
||
- Possible future projects: add IPv6 support, GSSAPI support,
|
||
test on SOCKS4 server
|
||
|
||
client/
|
||
Makefile.am
|
||
client_messages.C
|
||
client_state.C,h
|
||
cs_cmdline.C
|
||
cs_statefile.C
|
||
gui_rpc_server.C
|
||
http.C,h
|
||
log_flags.C,h
|
||
message.h
|
||
net_xfer.C,h
|
||
pers_file_xfer.C
|
||
proxy.C,h (added)
|
||
scheduler_op.C
|
||
lib/
|
||
error_numbers.h
|
||
|
||
Eric H Mar 27 2004
|
||
- Catch error returns from CPU benchmark timer
|
||
|
||
client/
|
||
cpu_benchmark.C
|
||
lib/
|
||
error_numbers.h
|
||
|
||
Rom Mar 26 2004
|
||
- Updated setup so it'll ask if you want it to be the defult screensaver
|
||
- Updated setup so that it'll remember where you installed it last and
|
||
select that folder by default.
|
||
|
||
win_build/installer
|
||
BOINC.ipr
|
||
win_build/installer/Media/Default/
|
||
default.mda
|
||
win_build/installer/Script Files/
|
||
Setup.ino, .ins, .obs, .rul
|
||
|
||
Rom Mar 28 2004
|
||
- Prepare the environment and installation program for a language aware
|
||
system. All language files will be installed with every installation.
|
||
|
||
This is the begining on bringing us into the Windows MUI effort.
|
||
|
||
win_build/installer/
|
||
<several files>
|
||
client/translation/
|
||
<deleted old layout>
|
||
<created new layout>
|
||
|
||
Rom Mar 28 2004
|
||
- Issue fix that Janus gave for the parsing error.
|
||
|
||
html/user/
|
||
host_edit_action.php
|
||
|
||
David Mar 28 2004
|
||
- Fix compile/link errors I introduced on Friday (sorry!!)
|
||
|
||
api/
|
||
Makefile.in
|
||
boinc_api.C
|
||
client/
|
||
Makefile.in
|
||
cpu_benchmark.C
|
||
|
||
Rom Mar 29 2004
|
||
- Fix BOINC_GUI so it'll build again.
|
||
|
||
client/
|
||
proxy.c
|
||
client/win/
|
||
wingui_dialog.cpp
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
boinc_gui.vcproj
|
||
|
||
David Mar 29 2004
|
||
- Don't use semaphores for multiple-copy exclusion on Unix.
|
||
Semaphores don't work better than lockfile.
|
||
- Fix bugs in global preferences.
|
||
- GLOBAL_PREFS::parse() now sets all booleans to false
|
||
- removed confused should_request_global_prefs() from Win client.
|
||
|
||
client/
|
||
main.C
|
||
prefs.C
|
||
win/
|
||
wingui_mainwindow.cpp,h
|
||
lib/
|
||
filesys.C
|
||
tools/
|
||
create_work.C
|
||
|
||
David Mar 29 2004
|
||
- rename main_loop() to boinc_main_loop()
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
main.C
|
||
win/
|
||
win_service.cpp
|
||
|
||
Rom Mar 29 2004
|
||
- Implement UI for SOCKS proxy server
|
||
- Fix setup bug in the making, only automatically startup BOINC if the user
|
||
has opted for the always start BOINC at startup.
|
||
|
||
client/win
|
||
wingui_dialog.cpp, .h
|
||
wingui_mainwindow.cpp, .h
|
||
wingui_proxydlg.cpp, .h (Added)
|
||
win_build/
|
||
boinc_gui.vcproj
|
||
win_build/installer/Script Files/
|
||
setup.rul
|
||
|
||
David Mar 30 2004
|
||
- preparation for moving prefs.C from client/ to lib/
|
||
(so can use in server):
|
||
- add bool found_venue return value from GLOBAL_PREFS::parse_file()
|
||
- add separate show_global_prefs_source() to print messages
|
||
- before sending signals to ACTIVE_TASKs, check their state
|
||
to avoid signaling non-existent processes
|
||
(this caused the Unix client to crash when reset)
|
||
- remove remaining semaphore-related code
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
app.C
|
||
client_state.C,h
|
||
cs_prefs.C
|
||
cs_scheduler.C
|
||
prefs.C,h
|
||
|
||
David Mar 30 2004
|
||
- don't check file size (on app startup) if it's an anonymous
|
||
platform project, and it's an app version file
|
||
|
||
client/
|
||
cs_apps.C
|
||
|
||
David Mar 30 2004
|
||
- sched server: when parse preferences, take venue into account
|
||
|
||
lib/
|
||
parse.C,h
|
||
sched/
|
||
Makefile.am
|
||
handle_request.C
|
||
server_types.C,h
|
||
|
||
Rom Mar 30 2004
|
||
- Asserts should be included in the output spew under the Windows IDE
|
||
- Make sure Semephore stuff is out of app_ipc.* stuff
|
||
- Include fix for Linux APM bug, the driver version info can contain
|
||
characters
|
||
|
||
client/
|
||
hostinfo_unix.c
|
||
lib/
|
||
app_ipc.c, .h
|
||
diagnostics.c
|
||
|
||
David Mar 31 2004
|
||
- make host_info related functions into members of HOST_INFO
|
||
|
||
client/
|
||
client_state.C
|
||
cs_benchmarks.C
|
||
cs_prefs.C
|
||
hostinfo.C,h
|
||
hostinfo_unix.C
|
||
win/
|
||
hostinfo_win.cpp
|
||
lib/
|
||
app_ipc.C
|
||
|
||
David Mar 31 2004
|
||
- call set_nslots() whenever there are new global prefs,
|
||
in case max_cpus has changed.
|
||
E.g. on a multiproc machine, if max_cpus is increased from 1 to 2,
|
||
it should start a new app.
|
||
- Call report_result_error() immediately when abort a client
|
||
due to excess CPU/disk/mem usage,
|
||
to ensure that the result is marked as erroneous,
|
||
and to make the error message more specific.
|
||
(Currently this is called after process is reaped,
|
||
but this may never happen).
|
||
|
||
client/
|
||
app.C,h
|
||
cs_prefs.C
|
||
hostinfo_unix.C
|
||
prefs.C
|
||
lib/
|
||
error_numbers.h
|
||
|
||
Rom Mar 31 2004
|
||
- Checkin prototype of universal gui based on wxWidgets.
|
||
|
||
clientgui/proto/
|
||
<Multiple Files>
|
||
|
||
David Mar 31 2004
|
||
- add support for mouse-event handling in apps
|
||
Apps that use graphics must now supply
|
||
boinc_app_mouse_move() and boinc_app_mouse_button functions
|
||
- check for file existence before opening for read, avoid 5-second delay
|
||
|
||
api/
|
||
boinc_api.C
|
||
graphics_api.C
|
||
windows_opengl.C
|
||
|
||
David April 1 2004
|
||
- Client: add a mechanism for suspending/resume network activity,
|
||
exactly parallel to the one existing mechanism for
|
||
suspending/resuming all (CPU+network) activity.
|
||
Initially this will be used to provide a GUI control.
|
||
Eventually we might have preference that control network
|
||
independently (time of day, only if idle, etc.)
|
||
- Client: save all messages in memory.
|
||
Implement GUI RPCs for getting ranges of messages.
|
||
|
||
client/
|
||
client_state.C,h
|
||
cs_prefs.C
|
||
gui_rpc_client.h
|
||
gui_rpc_server.C
|
||
main.C
|
||
message.C,h
|
||
lib/
|
||
messages.C
|
||
util.C,h
|
||
|
||
|
||
Davaid April 1 2004
|
||
- print message when resume network activity
|
||
- flesh out GUI RPC for messages
|
||
|
||
client/
|
||
cs_prefs.C
|
||
gui_rpc_client.C,h
|
||
gui_test.C
|
||
makefile.gui_test (new)
|
||
|
||
Rom April 1 2004
|
||
- Checkin UI for disabling/enabling network activity from the GUI
|
||
|
||
client/win/
|
||
boinc_gui.rc, .h
|
||
wingui_mainwindow.cpp, .h
|
||
|
||
David April 1 2004
|
||
- extend mouse interface to handle buttons better
|
||
|
||
api/
|
||
windows_opengl.C
|
||
|
||
Rom April 1 2004
|
||
- Found another place that should have been using boinc_file_exist.
|
||
NOTE: Still hasn't fixed the performance issue(s) on my machine though.
|
||
|
||
api/
|
||
boinc_api.c
|
||
|
||
David April 2 2004
|
||
- Client: fixed for disabling network activity
|
||
|
||
cs_files.C
|
||
cs_scheduler.C
|
||
hostinfo_unix.C
|
||
main.C
|
||
|
||
Jeff April 2 2004
|
||
- tagged as seti_boinc_app_release_2_32 and released to alpha.
|
||
|
||
David April 3 2004
|
||
- added a mechanism to handle situations where an app
|
||
appears to have exited successfully,
|
||
but in fact didn't call boinc_finish() or exit(0).
|
||
This apparently can happen on various platforms, don't ask me how.
|
||
The new mechanism:
|
||
boinc_finish() writes a file "boinc_finish_called"
|
||
in the slot directory.
|
||
When an app appears to have exited successfully,
|
||
the core client checks for the existence of this file.
|
||
If it's not there, the result is placed "in limbo":
|
||
it takes up a slot, but the app isn't restarted.
|
||
If the core client is restarted, the app is restarted.
|
||
|
||
NOTE: when we release a core client with this feature,
|
||
it's critical that all users reset the project,
|
||
and that updated versions of all apps are released.
|
||
Might be a good time for a major release increment.
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
app.C,h
|
||
lib/
|
||
app_ipc.h
|
||
|
||
David April 3 2004
|
||
- synchronize access to shared-mem work array by scheduler processes,
|
||
with the goal of NEVER sending the same result to different hosts.
|
||
- Instead of a single bool present flag, there are now 3 states
|
||
for an element in the array: absent, present, and
|
||
"checked out" (being considered for sending)
|
||
- There's now a semaphore that a scheduler process must acquire before
|
||
examining the state field of an array entry
|
||
(note: the feeder creates this semaphore,
|
||
but doesn't have to acquire it
|
||
because of the producer/consumer situation).
|
||
- split out the work-sending part of handle_request.C to a new file
|
||
(sched_send.C,h) because it was getting kinda big
|
||
|
||
sched/
|
||
Makefile.am
|
||
main.C,h
|
||
sched_send.C,h (new)
|
||
sched_shmem.h
|
||
show_shmem.C
|
||
|
||
David April 3 2004
|
||
- fix bugs in the above
|
||
|
||
client/
|
||
app.C
|
||
html/inc/
|
||
result.inc
|
||
lib/
|
||
filesys.C
|
||
synch.C
|
||
sched/
|
||
feeder.C
|
||
main.C
|
||
sched_config.C,h
|
||
|
||
David April 3 2004
|
||
- added code (from Rob Ogilvie) to check for battery usage
|
||
on Linux ACPI hosts
|
||
|
||
client/
|
||
hostinfo_unix.C
|
||
|
||
David April 3 2004
|
||
- If a web page requires login (e.g., forum/post.php)
|
||
the resulting form will refer to a handler (login_action.php)
|
||
in the wrong directory.
|
||
Kludge solution: put a symbolic link in forum/login_action.php
|
||
Is there a better solution? Maybe, but I'm too tired to think of it.
|
||
- better download instructions for Unix
|
||
|
||
html/
|
||
forum/
|
||
post.php
|
||
user/
|
||
account_setup_first_download.php
|
||
py/Boinc/
|
||
setup_project.py
|
||
|
||
David April 4 2004
|
||
- change the way file transfer speed is computed.
|
||
Instead of fancy exponential averaging,
|
||
just take the average every 3 seconds
|
||
|
||
client/
|
||
net_xfer.C,h
|
||
pers_file_xfer.h
|
||
|
||
David April 4 2004
|
||
- ACTIVE_TASK::request_exit() (win): kill the process immediately,
|
||
instead of sending it a quit request event,
|
||
waiting a few seconds, then killing it.
|
||
Currently the quit request event is checked only in
|
||
boinc_time_to_checkpoint(),
|
||
which (at least, in SETI@home) isn't called very often.
|
||
So it always takes 5 seconds to exit the core client.
|
||
|
||
NOTE: when the new app management-thread stuff is done,
|
||
we can change this back
|
||
|
||
client/
|
||
app.C
|
||
|
||
David April 6 2004
|
||
- move update_average() from sched_util.C to util.C
|
||
(and give it a half-life arg)
|
||
- move Messages class declaration out of util.h into its own file
|
||
- move file_lock() from util.C to filesys.C
|
||
- client: rename get_percent_done() to get_fraction_done
|
||
(uh... percents are 0..100; fracs are 0..1)
|
||
|
||
client/
|
||
client_state.h
|
||
cs_apps.C
|
||
cs_benchmark.C
|
||
cs_cmdline.C
|
||
cs_prefs.C
|
||
cs_scheduler.C
|
||
gui_rpc_server.C
|
||
message.h
|
||
lib/
|
||
filesys.C,h
|
||
messages.C
|
||
messages.h (new)
|
||
util.C,h
|
||
sched/
|
||
Makefile.am
|
||
sched_send.C
|
||
sched_util.C,h
|
||
update_stats.C
|
||
validate.C
|
||
validate_test.C
|
||
|
||
David April 7 2004
|
||
- Client: replace the buggy update_avg_cpu()
|
||
with the tried-and-true update_average()
|
||
to estimate average CPU rate per project
|
||
|
||
client/
|
||
client_state.h
|
||
client_types.C,h
|
||
cs_apps.C
|
||
cs_scheduler.C
|
||
|
||
David April 8 2004
|
||
- Clarify distinction between log messages (debugging)
|
||
and user messages (shown to user) in the client
|
||
and put both in one place (client_msgs.C,h)
|
||
- rename ClientMessages to CLIENT_MSG_LOG
|
||
- rename SchedMessages to SCHED_MSG_LOG
|
||
- rename Messages to MSG_LOG
|
||
- rename ScopeMessages to SCOPE_MSG_LOG
|
||
|
||
client/
|
||
Makefile.am
|
||
*.C
|
||
client_messages.C (removed)
|
||
message.h (removed)
|
||
client_msgs.C,h (new)
|
||
lib/
|
||
messages.C,h (removed)
|
||
msg_log.C,h (new)
|
||
sched/
|
||
Makefile.am
|
||
*.C
|
||
sched_messages.C (removed)
|
||
sched_msgs.C,h (new)
|
||
|
||
David April 8 2004
|
||
- If an active task is in limbo, don't mark its result as done!
|
||
(from James Drews)
|
||
|
||
client/
|
||
cs_apps.C
|
||
|
||
David April 8 2004
|
||
- Fix a major error in back-end logic (found by Jeff):
|
||
The canonical result's output files (and WU input files)
|
||
were being deleted when all results had server_state = OVER.
|
||
But this doesn't mean they've been validated!
|
||
So the third result from every group of three
|
||
was failing validation about half the time
|
||
because the canonical result output files had been deleted.
|
||
|
||
The fix: delete canonical result and WU files only when
|
||
all results are OVER *and* all results with outcome SUCCESS
|
||
have been validated.
|
||
|
||
sched/
|
||
transitioner.C
|
||
|
||
David April 9 2004
|
||
- Added zip/unzip code (from Carl Christensen).
|
||
This is basically the Info-ZIP code with unused files stripped out,
|
||
and some minor tweaks to return errors instead of exiting
|
||
|
||
zip/
|
||
* (new)
|
||
unzip/
|
||
* (new)
|
||
|
||
David April 9 2004
|
||
- Fixed a nasty bug that caused back-end processes
|
||
to corrupt records in the "result" table, and potentially others.
|
||
The Bug:
|
||
- escape_string() replaces ' and \ by \' and \\ respectively;
|
||
this is done so that they can be used in SQL statements, e.g.
|
||
update foo set blah='abc\'def';
|
||
- escape_string() (which can increase the length of a string)
|
||
didn't check the size of its output buffer
|
||
- The stderr_out field of results with stack traces
|
||
often are near their 4KB limit,
|
||
and have LOTS of \s (in file paths)
|
||
- escape_string() was writing beyond the end of the
|
||
stderr_out field, writing garbage into fields
|
||
like batch, claimed_credit, etc.
|
||
The Fix:
|
||
add a "len" argument to escape_string(),
|
||
and use safe_strncpy() to avoid writing off the end of the buffer.
|
||
|
||
db/
|
||
boinc_db.C
|
||
db_base.C,h
|
||
html/user/
|
||
stats.php
|
||
|
||
Rom April 10 2004
|
||
- Initial Snapshot of the new BOINC Universal GUI,
|
||
this GUI will provide the native interface for all supported platforms.
|
||
NOTE: This is just a bare bones skeleton.
|
||
Header file stuff still needs
|
||
to be moved around to support all the platforms.
|
||
stdwx.h should include config.h or win_config.h
|
||
depending on platform, etc.
|
||
|
||
clientgui/
|
||
* (new)
|
||
|
||
David April 10 2004
|
||
- restore compilation on Linux
|
||
|
||
lib/
|
||
filesys.C
|
||
sched/
|
||
sched_config.C
|
||
zip/
|
||
Makefile
|
||
|
||
David April 11 2004
|
||
- scheduler RPC: return a result's app version number
|
||
in a <app_version_num> field within <result>,
|
||
not an <app_version> field within <stderr_out>
|
||
Change scheduler to look in both places for now.
|
||
|
||
client/
|
||
client_types.C
|
||
sched/
|
||
handle_request.C
|
||
server_types.C
|
||
|
||
Jeff April 12 2004
|
||
- tagged with both:
|
||
boinc_core_release_3_00
|
||
seti_boinc_app_release_3_00
|
||
|
||
|
||
David April 13 2004
|
||
- removed "result_template_file" arg (and several other args)
|
||
from make_work; these can just be copied from the WU
|
||
|
||
sched/
|
||
make_work.C
|
||
|
||
David April 13 2004
|
||
- Changes in the parsing of WU template files:
|
||
- Any unrecognized elements in a <file_info>
|
||
are now just copied to the output.
|
||
So you can include attributes like <sticky/>
|
||
and they'll get propagated correctly.
|
||
- The following items can now be included in a WU template:
|
||
rsc_fpops_est
|
||
rsc_fpops_bound
|
||
rsc_memory_bound
|
||
rsc_disk_bound
|
||
delay_bound
|
||
min_quorum
|
||
target_nresults
|
||
max_error_results
|
||
max_total_results
|
||
max_success_results
|
||
|
||
These are not copied to the output,
|
||
but are used to populate the WORKUNIT
|
||
(which is now passed in as an arg)
|
||
|
||
The latter means that 'create_work' (the cmdline program) is simplified;
|
||
it can now take as few as 5 args
|
||
|
||
tools
|
||
backend_lib.C
|
||
create_work.C
|
||
|
||
David April 14 2004
|
||
- Added code (from Janus Kristensen) to cache web pages.
|
||
Restored leader boards (users/teams/hosts)
|
||
and made them cached with a refresh time of 1 hour
|
||
|
||
html/
|
||
inc/
|
||
cache.inc (new)
|
||
user/
|
||
index.php
|
||
stats.php
|
||
top_hosts.php
|
||
top_teams.php
|
||
top_users.php
|
||
|
||
David April 14 2004
|
||
- added boinc_make_dirs()
|
||
(preliminary support for projects subdirs for CPDN)
|
||
- If <non_cpu_intensive/> is in config file, send it in sched replies
|
||
|
||
lib/
|
||
app_ipc.C
|
||
filesys.C,h
|
||
sched/
|
||
sched_config.C,h
|
||
server_types.C
|
||
|
||
David April 14 2004
|
||
- moved MFILE declaration to a separate file
|
||
to facilitate a plain-C BOINC API
|
||
|
||
api/
|
||
mfile.h (new)
|
||
|
||
David April 15 2004
|
||
- change GUI RPC so that it uses TCP instead of UNIX-domain socket.
|
||
Core client accepts connections only from local host (127.0.0.1)
|
||
We currently use port 31416, since there's been no response
|
||
to my request for an official port.
|
||
- changed boinc_mkdir() so that it sees if the path already
|
||
exists and is a dir, and returns success if so
|
||
- main.C: print error message if CLIENT_STATE::init() fails
|
||
|
||
client/
|
||
client_state.C
|
||
file_names.C
|
||
gui_rpc_client.C,h
|
||
gui_rpc_server.C,h
|
||
main.C
|
||
lib/
|
||
filesys.C
|
||
|
||
David April 15 2004
|
||
- CLIENT_STATE::computer_resource_debts():
|
||
fix kludge that could result in seg fault
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
|
||
Rom April 15 2004
|
||
- Increase benchmark timeout from 60 seconds to 120 seconds
|
||
|
||
client/
|
||
cpu_benchmark.h
|
||
|
||
David April 18 2004
|
||
- Added cross-project identification (scheme developed by Janus Kristensen)
|
||
|
||
NOTE: this involves a database change (new field in user table).
|
||
You must update your database by adding the field and initializing it
|
||
(see html/ops/db_update.php) before using this code.
|
||
|
||
client/
|
||
client_types.C,h
|
||
cs_scheduler.C
|
||
db/
|
||
boinc_db.C,h
|
||
schema.sql
|
||
html/
|
||
user/
|
||
create_account_action.php
|
||
ops/
|
||
db_update.php (new)
|
||
py/Boinc/
|
||
database.py
|
||
sched/
|
||
db_dump.C
|
||
server_types.C
|
||
|
||
David April 19 2004
|
||
- Client: change the way network transfer speed is computed.
|
||
Instead of computing it every 3 seconds (which doesn't work
|
||
for short transfers) just computed it from start of transfer.
|
||
- when detach from a project, and global prefs are from that project,
|
||
delete the global prefs file and init() prefs in mem.
|
||
Otherwise you have prefs from unknown project.
|
||
- write <app_version_num> element in <result> only if writing to server
|
||
(avoid error parsing state file)
|
||
- some message end with multiple \n's. delete them all.
|
||
- change return type of boinc_file_exists() to bool
|
||
|
||
client/
|
||
client_state.C
|
||
client_types.C
|
||
net_xfer.C,h
|
||
prefs.C
|
||
win/
|
||
wingui.cpp
|
||
wingui_proxydlg.cpp
|
||
lib/
|
||
filesys.C,h
|
||
|
||
Rom April 20 2004
|
||
- Prevent a nested exception during a heap check by disabling the
|
||
heap check during a stack dump.
|
||
lib/
|
||
diagnostics.C
|
||
|
||
|
||
David April 20 2004
|
||
- The Windows CreateDirectory and RemoveDirectory return
|
||
nonzero on error (unlike rmdir and mkdir).
|
||
The code had it backwards, which led to various problems,
|
||
e.g. after attaching to a new project no RPC happened
|
||
- print error messages if fail to delete account file
|
||
or project dir on detach
|
||
|
||
client/
|
||
client_state.C
|
||
file_names.C
|
||
lib/
|
||
filesys.C
|
||
|
||
Jeff April 21 2004
|
||
- tagged as seti_boinc_app_release_3_01
|
||
|
||
David April 21 2004
|
||
- Web: page_head() no longer checks for logged-in user.
|
||
Pages that care about that must do it separately,
|
||
and can pass the user into page_head() if they want.
|
||
- added is_valid_country() function
|
||
- don't get logged-in user for pages that don't show sensitive info
|
||
(results, workunit, host).
|
||
This also makes these pages cacheable.
|
||
|
||
html/
|
||
forum/
|
||
edit.php
|
||
inc/
|
||
countries.php
|
||
util.inc
|
||
user/
|
||
result.php
|
||
results.php
|
||
show_host_detail.php
|
||
|
||
Rom April 22 2004
|
||
- Integrate in Sebastian Masch's ACPI code that works with multiple
|
||
AC Adapter types
|
||
- Integrate back in the APM code that works with the Linux 2.6 kernels
|
||
|
||
client/
|
||
hostinfo_unix.c
|
||
|
||
Jeff April 22 2004
|
||
- tagged as boinc_core_release_3_01
|
||
|
||
David April 22 2004
|
||
- boinc_fopen(): add a Unix-specific #ifdef case that,
|
||
in case of failure, sees if errno is EINTR and if so retries the fopen.
|
||
This fixes a problem in the SETI@home app,
|
||
where an initial fopen() gets interrupted by the timer (I think)
|
||
- add project_dir and wu_name elements to the APP_INIT_DATA structure;
|
||
add corresponding elements to the app_init_data.xml file;
|
||
populate these in the core client, and parse in the API
|
||
- rename boinc_trickle() to boinc_trickle_up()
|
||
- rename full_path() to relative_to_absolute()
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
app.C
|
||
cs_statefile.C
|
||
lib/
|
||
app_ipc.C,h
|
||
filesys.C,h
|
||
|
||
David April 23 2004
|
||
- added new items to APP_INIT_DATA (for Folding@home):
|
||
slot
|
||
boinc_dir
|
||
authenticator
|
||
- rename app_preferences to project_preferences in APP_INIT_DATA
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
app.C
|
||
lib/
|
||
app_ipc.C,h
|
||
|
||
Rom April 26 2004
|
||
- Fix a condition where we were leaking a file handle on Linux
|
||
- Fix a seg fault when the dirscanner attempts to scan a non
|
||
existent directory
|
||
|
||
client/
|
||
hostinfo_unix.c
|
||
lib/
|
||
filesys.c
|
||
|
||
Rom April 27 2004
|
||
- Remove dependency on semaphore stuff so the Mac 10.2 client will build.
|
||
NOTE: The semaphore stuff should only be used in server components now.
|
||
|
||
client/
|
||
Makefile.am
|
||
lib/
|
||
Makefile.am
|
||
|
||
Rom April 28 2004
|
||
- Fixup build system so it doesn't have to change the version number in the
|
||
Windows resource files for every version change. Make the resource files
|
||
include win_config.h which contain the nessassary information and then
|
||
reference it.
|
||
|
||
/
|
||
set-version
|
||
client/
|
||
Makefile.am
|
||
client/win/
|
||
*.rc
|
||
update* (deleted)
|
||
|
||
David April 28 2004
|
||
- fix compile problem on Linux
|
||
|
||
client/
|
||
hostinfo_unix.C
|
||
|
||
Rom April 28 2004
|
||
- Fixup Windows service controls so that pause/resume/start/stop work as
|
||
expected, when running as a service log to the Windows event log.
|
||
- When attempting to change the service description use runtime dynamic
|
||
linking for the call to ChangeServiceConfig2 so that we will work even
|
||
on NT 4.0 systems.
|
||
- Some of these fixes were based on code from Mathias Walter
|
||
|
||
client/
|
||
cs_cmdline.C
|
||
main.C
|
||
client/win/
|
||
win_service.cpp, .h
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
|
||
David April 30 2004
|
||
- scheduler: connect to DB after checking major version#
|
||
- scheduler: request 24-hour delay if bad major version#
|
||
- scheduler: request 1 hr delay if project is shut down
|
||
- scheduler: parse <cross_project_id> from client
|
||
- print expanded error in PHP when can't connect to DB
|
||
|
||
html/
|
||
inc/
|
||
db.inc
|
||
user/
|
||
create_account_action.php
|
||
sched/
|
||
handle_request.C
|
||
main.C,h
|
||
server_types.C,h
|
||
|
||
David April 30 2004
|
||
- Add a 10 second delay in "start", after starting daemons
|
||
but before writing run_state.xml file.
|
||
This lets the feeder delete the shared-mem segment
|
||
(if there is one) before CGI programs are created
|
||
and create new attachments
|
||
- get Fast CGI to compile (but not link)
|
||
|
||
sched/
|
||
Makefile.am
|
||
handle_request.C
|
||
main.C
|
||
server_types.C
|
||
start
|
||
|
||
David April 30 2004
|
||
- Got the scheduling server to compile (but not link) under fastCGI
|
||
For some reason I had to modify fcgi_stdio.h to accomplish this.
|
||
Would be nice to figure out what the problem is.
|
||
- Eliminated the use of streambuf stuff in various places.
|
||
This seems to cause problems.
|
||
|
||
db/
|
||
db_base.C
|
||
lib/
|
||
filesys.C
|
||
msg_log.C,h
|
||
parse.C
|
||
util.C,h
|
||
sched/
|
||
Makefile.am,in
|
||
fcgi_stdio.h (new)
|
||
fcgsapp.h (new)
|
||
handle_request.C
|
||
main.C
|
||
sched_config.C,h
|
||
sched_util.C
|
||
server_types.C
|
||
|
||
tools/
|
||
backend_lib.C
|
||
process_results_template.C
|
||
|
||
David May 2 2004
|
||
- removed the "project" table from DB.
|
||
Its only role was to store the project name.
|
||
This is now in the config file instead.
|
||
|
||
NOTE: if you upgrade to this code, you must add an entry
|
||
<long_name>...</long_name>
|
||
to your config.xml file.
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
schema.sql
|
||
py/Boinc/
|
||
add_util.py
|
||
database.py
|
||
db_mid.py
|
||
setup_project.py
|
||
sched/
|
||
main.C,h
|
||
sched_config.C,h
|
||
server_types.C
|
||
|
||
David May 2 2004
|
||
- finished the implementation of cross-project identification:
|
||
scheduler: if get cross_project ID in request message,
|
||
and it's different than in DB, update user record
|
||
- new global-prefs propagation policy:
|
||
global prefs are propagated to accounts with the same email address.
|
||
Implementation:
|
||
- RPC request message has <global_prefs_source_email_hash>
|
||
- scheduler: if get global prefs in request message,
|
||
and they're from an account w/ same email address,
|
||
and they're newer than in DB,
|
||
then update user record
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
sched/
|
||
handle_request.C
|
||
server_types.C,h
|
||
|
||
David May 2 2004
|
||
- client: fixed bug in general prefs parsing that caused
|
||
source project to be "unidentified"
|
||
|
||
client/
|
||
prefs.C
|
||
|
||
David May 3 2004
|
||
- server: instead of a single "stop" file, we now have two:
|
||
stop_daemons: tells daemon processes to stop
|
||
stop_sched: tells scheduler to return "down" message
|
||
|
||
This allows us to have the following logic in "start":
|
||
remove stop_daemons
|
||
start daemon processes
|
||
wait 10 seconds
|
||
remove stop_sched
|
||
which is necessary to give the feeder a "head start"
|
||
on deleting and creating the shared memory segment.
|
||
|
||
NOTE: there's still a problem when a sched process
|
||
hangs (e.g. while sending to hung client) while attached to shmem.
|
||
|
||
sched/
|
||
*.C
|
||
start
|
||
|
||
David May 3 2004
|
||
- core client, Unix: if app is killed by SIGKILL,
|
||
put it in limbo (same as if exited zero without writing finish file).
|
||
|
||
client/
|
||
app.C
|
||
|
||
Rom May 3 2004
|
||
- Try to cleanup a recursive failure during a dump to stderr by changing
|
||
the fprintf call in diagnostics.c
|
||
- Apparently exceptions don't walk up the inheritance tree when calling
|
||
virtual functions, so force the issue by locally scoping additional
|
||
variables that can be set by constructors which will allow base functions
|
||
to get the correct information.
|
||
|
||
lib/
|
||
diagnostics.c
|
||
exception.c, .h
|
||
|
||
Rom May 3 2004
|
||
- Add new report to OPs pages to show failures by platform
|
||
|
||
html/ops/
|
||
db_ops.inc
|
||
failure_result_summary_by_platform.php
|
||
index.php
|
||
|
||
Rom May 3 2004
|
||
- Fix a screensaver bug where if BOINC was suspended it would get stuck
|
||
trying to bring up graphics for a suspended application.
|
||
- Remove obselete db_ops.inc and util_ops.inc file from the ops directory.
|
||
|
||
client/
|
||
ss_logic.c
|
||
html/ops/
|
||
db_ops.inc (remove)
|
||
util_ops.inc (remove)
|
||
|
||
Rom May 3 2004
|
||
- Fix a bug where the number of files deleted being returned on the result
|
||
summary report was actually the number of invalid records
|
||
|
||
html/inc/
|
||
db_ops.inc
|
||
|
||
Rom May 4 2004
|
||
- Fixup new report so it gives a quick roll-up of information, i.e. strips
|
||
Linux kernel version down to just major, minor, and revision and shortens
|
||
the Windows on_name down to just 'Windows'
|
||
|
||
html/inc/
|
||
db_ops.inc
|
||
|
||
Rom May 4 2004
|
||
- Use a more optimized query for the results summary page,
|
||
load times go from 8-10 seconds to 1-2 seconds
|
||
- Fix client_version_num bug after field was renamed to app_version_num
|
||
|
||
html/inc/
|
||
db_ops.inc
|
||
|
||
Rom May 4 2004
|
||
- Include a link on the failure page that'll bring up a report
|
||
with only those failures
|
||
|
||
html/inc/
|
||
db_ops.inc
|
||
|
||
David May 4 2004
|
||
- file upload handler: accept any major version
|
||
- scheduler: if wrong major version, don't set "nucleus only" flag
|
||
(this prevents acking of results)
|
||
- db_dump: put encoding=iso-8859-1 into header
|
||
|
||
sched/
|
||
db_dump.C
|
||
file_upload_handler.C
|
||
handle_request.C
|
||
|
||
Rom May 4 2004
|
||
- Touchup on the os_name and os_version fields in the host table.
|
||
This will cause some merging woes but should fix things
|
||
in the long run as version changes and service packs
|
||
won't block a host merger.
|
||
|
||
client/win/
|
||
hostinfo_win.C
|
||
|
||
Rom May 4 2004
|
||
- Tag for 3.03 release, all platforms
|
||
boinc_core_release_3_03
|
||
seti_boinc_app_release_3_03
|
||
|
||
David May 5 2004
|
||
- fixed bug where Unix client ignored QUIT signal
|
||
- rename CLIENT_STATE::cleanup_and_exit()
|
||
to CLIENT_STATE::quit_activities()
|
||
(this function does NOT exit!!!!)
|
||
- quit_client(): exit() after quitting activities
|
||
(this is why the client wasn't exiting)
|
||
- quit_client(), susp_client(), resume_client():
|
||
print messages about which signal was received
|
||
- core client, Unix: if app is killed by SIGQUIT,
|
||
put it in limbo (same as if exited zero without writing finish file).
|
||
|
||
client/
|
||
app.C
|
||
client_state.h
|
||
cs_apps.C
|
||
main.C
|
||
win/
|
||
wingui_mainwindow.cpp
|
||
tools/
|
||
backend_lib.C
|
||
create_work.C
|
||
|
||
Rom May 5 2004
|
||
- Tag for 3.03 release, all platforms
|
||
boinc_core_release_3_04
|
||
|
||
David May 5 2004
|
||
- core client: if there are errors in GUI_RPC setup
|
||
(e.g. the port is already in use),
|
||
just print the error, don't exit
|
||
- In some cases we ask for work in order to keep
|
||
all processors busy;
|
||
make sure we ask for at least 1 second in this case.
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
gui_rpc_server.C,h
|
||
scheduler_op.C
|
||
lib/
|
||
error_numbers.h
|
||
|
||
David May 5 2004
|
||
- get "make dist" to work again
|
||
|
||
Makefile.am,in
|
||
client/
|
||
Makefile.am,in
|
||
sched/
|
||
Makefile.am,in
|
||
|
||
Rom May 5 2004
|
||
- Our exit strategy should be the same for Windows and Unix.
|
||
The signal handler should use the same global flags as Windows
|
||
for suspending and resuming activities.
|
||
|
||
client/
|
||
main.C
|
||
|
||
Rom May 6 2004
|
||
- Add a new report called pass percentage by platform which will allow us
|
||
to continue monitoring the pass percentages for the latest release of
|
||
each app version per platform.
|
||
|
||
NOTE: The query isn't smart enough yet to exclude invalid platform to
|
||
version combinations. For instance currently Linux is on version
|
||
302 and Windows is on 301, but the report will still show results
|
||
for Linux 301
|
||
|
||
html/inc/
|
||
db_ops.inc
|
||
html/ops/
|
||
failure_result_summary_by_platform.php
|
||
index.php
|
||
pass_percentage_by_platform.php
|
||
|
||
David May 9 2004
|
||
html/
|
||
inc/
|
||
gallery.inc
|
||
uotd.inc (new)
|
||
user/
|
||
index.php
|
||
team.php
|
||
team_lookup.php
|
||
|
||
David May 10 2004
|
||
- extend the set of signals that are treated as "external",
|
||
i.e. if an app exits with one of these, put it in limbo
|
||
rather than treating it as error:
|
||
SIGHUP, SIGINT, SIGQUIT, SIGKILL, SIGTERM, SiGSTOP
|
||
Note: some of these should in principle never happen
|
||
because they're caught by the API.
|
||
But it doesn't hurt to be safe.
|
||
- update_average(): avoid divides by zero
|
||
|
||
client/
|
||
app.C
|
||
lib/
|
||
exception.h
|
||
util.C
|
||
|
||
David May 10 2004
|
||
- added support for key up/down handling by apps
|
||
|
||
api/
|
||
windows_opengl.cpp
|
||
|
||
David May 11 2004
|
||
- replaced zip/unzip libraries with new code from Carl Christensen
|
||
|
||
zip/
|
||
*
|
||
|
||
David May 11 2004
|
||
- remove "user" argument from page_head()
|
||
|
||
html/
|
||
*
|
||
|
||
David May 11 2004
|
||
- Web: added "title" argument to project_banner().
|
||
Lets the project control how page titles are rendered.
|
||
Removed explicit <h2>title</h2>s from most pages
|
||
|
||
html/
|
||
inc/many
|
||
user/many
|
||
|
||
David May 11 2004
|
||
- continued implementation of trickle messages;
|
||
fairly complete now except for app receipt of trickle-downs
|
||
|
||
NOTE: changed format of trickle_down table.
|
||
An update function is included in html/ops/db_update.php
|
||
|
||
api/
|
||
boinc_api.h
|
||
client/
|
||
Makefile.am,in
|
||
app.h
|
||
client_state.h
|
||
cs_scheduler.C
|
||
gui_rpc_server.C
|
||
scheduler_op.C
|
||
cs_trickle.C (new)
|
||
db/
|
||
boinc_db.C,h
|
||
schema.sql
|
||
sched/
|
||
handle_request.C
|
||
trickle_handler.C
|
||
|
||
David May 11 2004
|
||
- bug fixes in trickle code.
|
||
Trickle-ups work correctly.
|
||
handle_trickles works correctly.
|
||
trickle-downs are getting sent back OK
|
||
- client: if scheduler reply gets parse error, backoff project
|
||
(fixed bug where we retry every second)
|
||
- sched server: if request message doesn't parse,
|
||
send an "incomplete request received" reply
|
||
(instead of just returning: uh, ????)
|
||
- sched server: if request is not asking for work,
|
||
don't check min_sendwork_interval or try to send work
|
||
(avoid spurious "last RPC too recent" messages)
|
||
|
||
client/
|
||
scheduler_op.C
|
||
sched/
|
||
handle_request.C
|
||
server_types.C,h
|
||
trickle_handler.C
|
||
|
||
David May 12 2004
|
||
- Server: remove MEDIUM_BLOB_SIZE and use LARGE_BLOB_SIZE instead.
|
||
MEDIUM_BLOB_SIZE was used in various C structs
|
||
to hold database blobs for:
|
||
app_version.xml_doc (list of files in app)
|
||
result.xml_doc_in, xml_doc_out (output files)
|
||
result.stderr_out
|
||
wu.xml_doc (input files)
|
||
It was defined as 4KB, which overflowed if you had
|
||
more than 10 or so files (with signatures etc.)
|
||
|
||
Note 1: this greatly increases the size of WORKUNIT and RESULT,
|
||
to I decreased the number of WU_RESULTs in shared memory
|
||
from 1000 to 100.
|
||
Eventually we might want to redefine the shared memory
|
||
so that it doesn't store the entire structs
|
||
Note 2: these buffer overflows should have been caught early-on,
|
||
i.e. when the workunit, result or app_version was created.
|
||
We should never just do a strcpy() or even safe_strncpy();
|
||
instead, we should check for overflow, return error if so,
|
||
then do the copy.
|
||
I added some code to do this in workunit and result generation;
|
||
still need to do this for app_version (in Python)
|
||
|
||
db/
|
||
boinc_db.h
|
||
sched/
|
||
assimilator.C
|
||
file_deleter.C
|
||
make_work.C
|
||
sched_send.C
|
||
sched_shmem.C
|
||
server_types.h
|
||
transitioner.C
|
||
tools/
|
||
backend_lib.C
|
||
process_result_template.C
|
||
|
||
David May 12 2004
|
||
- Added Janus Kristensen's "download network" pages
|
||
(for dissemination of 3rd-party add-ons)
|
||
|
||
html/
|
||
inc/
|
||
download_network.inc
|
||
user/
|
||
download_network.php
|
||
|
||
Karl 2004-05-12
|
||
- update_versions: by default only allow most recent core client
|
||
|
||
tools/
|
||
update_versions
|
||
|
||
David May 14 2004
|
||
- various web fixes
|
||
|
||
David May 15 2004
|
||
- small trickle-down fixes
|
||
client/
|
||
cs_trickle.C
|
||
scheduler_op.C
|
||
|
||
David May 15 2004
|
||
- Massive simplification of STARFIELD implementation.
|
||
Instead of using the same 3D coordinate space as other stuff,
|
||
stars now have their own -1..1 type coordinate space,
|
||
and we do the perspective transformation ourselves.
|
||
This eliminates the need for all the is_visible() crap.
|
||
|
||
The goal was to get rid of the hang/crash when the user
|
||
moves the viewpoint too far away,
|
||
but I ended up rewriting the (crufty) code.
|
||
|
||
Got rid of get_matrix_invert()
|
||
|
||
- Moved glFlush() from REDUCED_ARRAY::draw() to SAH_GFX_BASE::render
|
||
(or whatever the app's render routine is)
|
||
|
||
api/
|
||
gutil.C,h
|
||
reduce.C
|
||
|
||
David May 17 2004
|
||
- In the scheduler shared-memory segment,
|
||
keep only the result ID (not the whole result record)
|
||
in each WU_RESULT.
|
||
This saves large amounts of memory,
|
||
and doesn't incur any DB overhead because we have to
|
||
reread the result record anyway.
|
||
|
||
sched/
|
||
feeder.C
|
||
sched_shmem.h
|
||
sched_send.C
|
||
show_shmem.C
|
||
|
||
David May 18 2004
|
||
- Added the "homogeneous redundancy" feature courtesy of Michela Taufer.
|
||
This lets a project say that results for a given
|
||
workunit should be sent only to hosts with the same
|
||
OS name + CPU vendor.
|
||
Enabled it by putting <homogeneous_redundancy/> in config.xml
|
||
- parse <non_cpu_intensive/> in scheduler replies
|
||
|
||
client/
|
||
scheduler_op.C
|
||
sched/
|
||
sched_config.C,h
|
||
sched_send.C
|
||
|
||
David May 18 2004
|
||
- Various changes to benchmark code:
|
||
- unroll loops in FP benchmark
|
||
- use 10M instead of 1M ops per iteration
|
||
- use dtime() for timing
|
||
- get rid of wacky integer benchmark;
|
||
replace with integer counterpart to FP benchmark
|
||
|
||
client/
|
||
cpu_benchmark.C
|
||
|
||
Rom May 18 2004
|
||
- XML Parsing errors should now be hidden from normal operation.
|
||
NOTE: In order to see XML parsing errors you'll need to turn on the
|
||
debug state and debug scheduler operation log flags.
|
||
|
||
client/
|
||
app.C
|
||
client_types.C
|
||
cs_statefile.C
|
||
hostinfo.C
|
||
prefs.C
|
||
proxy.C
|
||
scheduler_op.C
|
||
time_stats.C
|
||
|
||
Rom May 18 2004
|
||
- Tag for 3.05 release, all platforms
|
||
boinc_core_release_3_05
|
||
|
||
David May 19 2004
|
||
- Added code for Whetstone benchmark.
|
||
This produces a result several times larger than our own floating-point
|
||
benchmark (e.g., 750MFLOPS versus 160MFLOPS).
|
||
But it's not clear that the Whetstone number
|
||
should be interpreted as MFLOPS.
|
||
If you want to check it out, add a call to whetstone(10, x) somewhere,
|
||
and look at the result in the debugger.
|
||
|
||
client/
|
||
whetstone.C (new)
|
||
|
||
David May 19 2004
|
||
- Added code for Dhrystone benchmark.
|
||
Use the "VAX MIPS" result as integer benchmark.
|
||
It's somewhat higher than the benchmark we've been using.
|
||
- Switch to using Whetstone and Dhrystone instead of home-brew benchmarks.
|
||
|
||
client/
|
||
cpu_benchmark.C,h
|
||
cs_benchmark.C
|
||
dhrystone.C (new)
|
||
whetstone.C
|
||
|
||
David May 19 2004
|
||
- Since new benchmarks are higher than old ones,
|
||
redefine a cobblestone as 100 * (fpops + iops)/2
|
||
(omit memory bandwidth, use 100 instead of 300)
|
||
|
||
sched/
|
||
handle_request.C
|
||
|
||
David May 19 2004
|
||
- Changed dhry/whetstone to use fixed # of iterations instead
|
||
of dynamically adapting.
|
||
This hopefully will make multiple CPUs run more in lockstep
|
||
|
||
client
|
||
cpu_benchmark.h
|
||
cs_benchmark.C
|
||
dhrystone.C
|
||
whetstone.C
|
||
|
||
David May 19 2004
|
||
- boinc_fopen: if opening for read, and file doesn't exist,
|
||
return 0 immediately (avoid 5-sec delays)
|
||
- boinc_resolve_filename: use boinc_fopen() to open symlink file
|
||
- graphics: scale starfield velocity down by a factor of 10
|
||
|
||
api/
|
||
gutil.C
|
||
lib/
|
||
app_ipc.C
|
||
filesys.C
|
||
|
||
David May 20 2004
|
||
- In messages about benchmarks, report the number of CPUs, and
|
||
say that benchmark numbers are per CPU
|
||
|
||
client/
|
||
cs_benchmark.C
|
||
|
||
David May 21 2004
|
||
- API: changed timer period from 50 Hz to 1 Hz.
|
||
This timer is used only for reporting progress and CPU,
|
||
not for doing graphics, to 1 Hz is enough
|
||
- API: if setup_shared_mem() returns error, set standalone = true.
|
||
This means that if you run an app standalone,
|
||
it will be detected automatically,
|
||
so no need for command-line args or even
|
||
standalone argument to boinc_init()
|
||
(but leave that arg in for now)
|
||
- API: initialize fraction_done to -1,
|
||
and only report it to core client if >= 0
|
||
(i.e. don't report it unless app specifies it)
|
||
- API: removed
|
||
#ifdef HAVE_SYS_SHM_H
|
||
#ifdef HAVE_SYS_IPC_H
|
||
around calls to attach_shmem in non-Win case.
|
||
This not an appropriate place for these ifdefs.
|
||
- core client: ACTIVE_TASK_SET::check_app_exited():
|
||
skip tasks in state PROCESS_IN_LIMBO.
|
||
This avoid core client spinning when apps misbehave.
|
||
- core client: changed variable names in app.C:
|
||
starting_cpu_time -> episode_start_cpu_time
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
app.C,h
|
||
|
||
David May 21 2004
|
||
- Core client: attempted to make benchmarks more accurate
|
||
and reproducible on multiprocessor or HT machines
|
||
be forcing each phase (floating point, integer)
|
||
to be more or less concurrent across processors.
|
||
This is done using trigger files.
|
||
Each benchmark waits for its trigger file before starting,
|
||
and stops when the file goes away.
|
||
|
||
client/
|
||
cpu_benchmark.h
|
||
cs_benchmark.C
|
||
dhrystone.C
|
||
whetstone.C
|
||
|
||
Rom May 21 2004
|
||
- A little fine tuning to the benchmark process.
|
||
Should be less than 1% difference between executions without any
|
||
other software runing
|
||
|
||
client/
|
||
cs_benchmark.C
|
||
dhrystone.C
|
||
whetstone.C
|
||
|
||
David May 21 2004
|
||
- Core client: in FILE_XFER_SET::poll(), when completed a file-size query,
|
||
close the socket before iniating the file transfer.
|
||
Otherwise we have a socket that's never closed.
|
||
|
||
Note: some aspects of the FILE_XFER/HTTP_OP/NET_XFER hierarchy
|
||
seem absurdly complex, like the issue of when sockets are closed.
|
||
The whole thing should be reexamined at some point (but not now).
|
||
|
||
client/
|
||
file_xfer.X
|
||
|
||
Rom May 22 2004
|
||
- Somehow the boinc release build switched over to using shared libraries on
|
||
Windows instead of static, so now i'm switching it back to static libraries.
|
||
|
||
win_build/
|
||
boinc_gui.vcproj
|
||
|
||
Rom May 23 2004
|
||
- Add new report to OPs pages to show failures by host
|
||
|
||
html/ops/
|
||
failure_result_summary_by_host.php
|
||
index.php
|
||
|
||
David May 23 2004
|
||
- web: activating an account (un-munging the email address)
|
||
can fail if there's already an account with that email address.
|
||
Print an explanatory message in this case.
|
||
- web: moved forum-display code to separate file/functions
|
||
(forum_show.inc) so can selectively show forums
|
||
Renamed "$n" to "$thread_per_page" (come on, folks)
|
||
- remove extra tags in core_version XML dump file
|
||
|
||
html/
|
||
forum/
|
||
forum.php
|
||
forum_show.inc (new)
|
||
sample_index.php (renamed from index.php)
|
||
inc/
|
||
forum.inc
|
||
user/
|
||
download.php
|
||
download_network.php
|
||
login_action.php
|
||
sample_index.php (renamed from index.php)
|
||
sched/
|
||
db_dump.C
|
||
|
||
David May 23 2004
|
||
- Support for "compound applications" (such as climateprediction.net)
|
||
in which a main program runs several apps in sequence.
|
||
The items are:
|
||
1) The app init file now contains fields
|
||
<fraction_done_start> and <fraction_done_end>
|
||
giving the fraction-done range occupied by the app.
|
||
Note: the app calls boinc_fraction_done() with values
|
||
from 0 to 1 as usual.
|
||
The API implementation takes care of scaling them
|
||
to the start..end range.
|
||
|
||
The main program must fill in these fields and call
|
||
boinc_write_app_init_file() prior to running each app.
|
||
2) boinc_finish() fills the final CPU time into the
|
||
APP_INIT_DATA struct, then calls boinc_write_app_init_file().
|
||
This passes the CPU time along to the next program.
|
||
3) got rid of boinc_child_start() and boinc_child_done().
|
||
|
||
api/
|
||
boinc_ipc.C,h
|
||
client/
|
||
app.C
|
||
lib/
|
||
app_ipc.C,h
|
||
|
||
David May 24 2004
|
||
- Change benchmarks functions to use CPU time instead wall-clock time.
|
||
- move CPU measurement functions from api/boinc_api.C to lib/util.C
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
cs_scheduler.C
|
||
dhrystone.C
|
||
whetstone.C
|
||
lib/
|
||
util.C,h
|
||
|
||
David May 24 2004
|
||
- boinc_delete_file(): Windows: retry 5 times w/ 1 second delay
|
||
(in case virus-check program has file locked).
|
||
This may fix a problem where slot directories
|
||
weren't getting cleaned up.
|
||
- if clean_out_dirs() fails when starting app,
|
||
print error message and return error (so app won't start)
|
||
|
||
client/
|
||
app.C
|
||
cpu_benchmark.h
|
||
cs_benchmark.C
|
||
file_names.C
|
||
lib/
|
||
filesys.C,h
|
||
|
||
David May 24 2004
|
||
- client: initialize NET_XFER::xfer_speed to -1,
|
||
and when we print it out check for this value
|
||
and print "no bytes transferred"
|
||
(this happens e.g. if upload a file that's
|
||
already been uploaded)
|
||
- removed NET_XFER::net_xfer_state (not used)
|
||
|
||
client/
|
||
net_xfer.C,h
|
||
pers_file_xfer.h
|
||
|
||
Rom May 24 2004
|
||
- Tag for 3.06 release, all platforms
|
||
boinc_core_release_3_06
|
||
|
||
David May 24 2004
|
||
- bugs in update_versions:
|
||
"cur" -> "cursor"
|
||
move call to get_current_core_version() after DB init
|
||
|
||
tools/
|
||
update_versions
|
||
|
||
David May 24 2004
|
||
- Change benchmarks to not use global variables
|
||
(since, on Windows, we have several threads running them
|
||
in the same address space).
|
||
This requires passing around an extra structure pointer,
|
||
which slows down the benchmarks,
|
||
but it doesn't seem to make a big difference.
|
||
|
||
client/
|
||
dhrystone.C
|
||
whetstone.C
|
||
|
||
David May 25 2004
|
||
- added -noinsert option to assimilator
|
||
|
||
sched/
|
||
assimilator.C
|
||
|
||
David May 25 2004
|
||
- change client compile from -O2 to -O6 (Unix)
|
||
This brings the benchmark speeds on my laptop
|
||
(2.2 GHz Celeron) roughly into line with Win:
|
||
|
||
Linux -O6:
|
||
whet 933
|
||
dhry 1585
|
||
|
||
Linux -O2
|
||
whet 545
|
||
dhry 1268
|
||
|
||
Win release
|
||
whet 840
|
||
dhry 1512
|
||
|
||
Win debug
|
||
whet 655
|
||
dhry 1436
|
||
|
||
client/
|
||
Makefile.am
|
||
|
||
David May 25 2004
|
||
- setup_project.py:
|
||
copy sample_index.php to index.php
|
||
Otherwise tests don't work.
|
||
|
||
py/Boinc/
|
||
setup_project.py
|
||
test/
|
||
testbase.py
|
||
|
||
Rom May 25 2004
|
||
- Tag for 3.07 release, all platforms
|
||
boinc_core_release_3_07
|
||
|
||
David May 26 2004
|
||
- update Dhrystone/Whetstone code based on latest versions (2.1, ?)
|
||
I don't think this will make a damn bit of difference,
|
||
but it's better to stay current
|
||
|
||
client/
|
||
dhrystone.C
|
||
whetstone.C
|
||
|
||
David May 26 2004
|
||
- updated config.guess
|
||
|
||
config.guess
|
||
|
||
Rom May 26 2004
|
||
- Update config.guess so we don't have to add the --build command to
|
||
each execution of ./configure for the Macs
|
||
|
||
/
|
||
config.guess
|
||
|
||
Rom May 26 2004
|
||
- NEW GUI: Implement Render and State management infrastructure.
|
||
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
BaseListCtrlView.cpp, .h
|
||
BaseWindowView.cpp, .h
|
||
MainFrame.cpp, .h
|
||
MessagesView.cpp, .h
|
||
ProjectsView.cpp, .h
|
||
ResourceUtilizationView.cpp, .h
|
||
TransfersView.cpp, .h
|
||
WorkView.cpp, .h
|
||
|
||
David May 27 2004
|
||
- Added a mechanism for limiting the number of results
|
||
sent to a given host in a given day.
|
||
- added 'nresults_today field' to host DB table
|
||
- added 'daily_result_quota' element to config.xml and SCHED_CONFIG
|
||
(optional - gives max results per host per day)
|
||
- change server logic so that the host record is updated
|
||
after calling send_work()
|
||
- change server logic to enforce daily result quota,
|
||
send message to user if quota exceeded,
|
||
also write log message if this happens
|
||
- Added script to send email to all opted-in users
|
||
|
||
NOTE: existing projects will have to update their DB.
|
||
You can do this using html/ops/db_update.php
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
schema.sql
|
||
html/ops/
|
||
create_forums.php
|
||
db_update.php
|
||
mass_email.php (new)
|
||
sched/
|
||
handle_request.C
|
||
sched_config.C,h
|
||
sched_send.C
|
||
|
||
David May 27 2004
|
||
- update comments in 'start'
|
||
|
||
sched/
|
||
start
|
||
|
||
David May 27 2004
|
||
- The BOINC app graphics framework does not use
|
||
(or require the use of) OpenGL.
|
||
Get rid of all OpenGL stuff in the code.
|
||
Note: windows_opengl.C is misnamed.
|
||
|
||
api/
|
||
graphics_api.C,h
|
||
windows_opengl.C
|
||
|
||
David May 27 2004
|
||
- added support for "static graphics":
|
||
applications generate graphics from a static image file
|
||
(part of the workunit) rather than dynamically.
|
||
- removed cruft from gutil.C:
|
||
mode_orth_ratio()
|
||
set_viewport_*()
|
||
center_screen_ratio()
|
||
I have no idea what these were for,
|
||
and perhaps neither did their author.
|
||
|
||
- moved declarations of boinc_ap_mouse_button() etc.
|
||
to graphics_api.h
|
||
api/
|
||
graphics_api.h
|
||
gutil.C
|
||
static_graphics.C (new)
|
||
windows_opengl.C
|
||
doc/
|
||
graphics.png
|
||
graphics.sxd
|
||
|
||
David May 27 2004
|
||
- negated Windows timezone, and server-side timezone usage
|
||
|
||
client/
|
||
hostinfo_win.cpp
|
||
html/inc/
|
||
host.inc
|
||
|
||
Rom May 28 2004
|
||
- Fix screensaver issue where somebody may have configured a 0 blank time,
|
||
if so, the blank time is set to twenty minutes.
|
||
- Host properties on the BOINC Ops page now shows the nresults_today value
|
||
- The host failures report now displays the nresults_today
|
||
|
||
client/win/
|
||
wingui_mainwindow.cpp
|
||
html/inc
|
||
db_ops.inc
|
||
html/ops/
|
||
failure_result_summary_by_host.php
|
||
|
||
Rom May 29 2004
|
||
- Fix a possible bug in the new Limiting number of results sent
|
||
to a host per day due to a floating point issue.
|
||
|
||
sched/
|
||
handle_request.C
|
||
|
||
David May 30 2004
|
||
- scheduler: modify_host_struct():
|
||
modify the actual structure, not a copy
|
||
(this caused results from new hosts to get zero claimed credit)
|
||
- numerous web site changes, including:
|
||
- added "recompute credit" feature for hosts
|
||
- moved forum files from html/forum to html/user
|
||
Also changed forum code to use object notation
|
||
(instead of archaic array notation)
|
||
and to eliminate the use of global variables
|
||
- show SETI@home credit, CPU hours
|
||
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
forum_show.inc (new)
|
||
host.inc
|
||
profile.inc
|
||
user.inc
|
||
ops/
|
||
forum_repair.php (moved from forum)
|
||
user/
|
||
forum_*.php (new; moved/renamed from forum)
|
||
host_delete.php
|
||
host_edit_action.php
|
||
host_edit_form.php
|
||
sched/
|
||
handle_request.C
|
||
sched_send.C
|
||
|
||
David May 30 2004
|
||
- Add the ability to sort by total or expavg credit in most lists
|
||
- Fix the "update credit" feature to use the same
|
||
formula used to compute expavg credit in the first place
|
||
|
||
html/
|
||
inc/
|
||
host.inc
|
||
team.inc
|
||
user.inc
|
||
user/
|
||
host_update_credit.php
|
||
hosts_user.php
|
||
top_hosts.php
|
||
top_teams.php
|
||
top_users.php
|
||
|
||
Karl 2004-05-31
|
||
- update_versions signature files: added feature so that if
|
||
'exec-file.sig' exists in a directory, treat it as the signature file
|
||
for exec-file.
|
||
|
||
tools/
|
||
update_versions
|
||
py/Boinc/
|
||
tools.py
|
||
|
||
David May 31 2004
|
||
- Web: changed project news mechanism to use RSS
|
||
(Really Simple Syndication), described here:
|
||
http://blogs.law.harvard.edu/tech/rss
|
||
All projects now offer news feed at rss_main.php
|
||
This code courtesy of Jens Seidler.
|
||
- SETI@home public site: made front page cached
|
||
- added index on profile.uotd_time
|
||
|
||
db/
|
||
constraints.sql
|
||
html/
|
||
inc/
|
||
cache.inc
|
||
util.inc
|
||
news.inc (new)
|
||
user/
|
||
rss_main.php
|
||
sample_index.php
|
||
old_news.php (new)
|
||
|
||
David May 31 2004
|
||
- Changed BOINC news to use RSS also
|
||
|
||
doc/
|
||
index.php (new)
|
||
index.html (removed)
|
||
rss_main.php (new)
|
||
|
||
David May 31 2004
|
||
- API: do not catch HUP, INT or QUIT signals.
|
||
This must be allowed to kill the application,
|
||
so that the core client sees the app as having
|
||
been killed externally, and puts it in limbo
|
||
(rather than seeing it as having quit with an error)
|
||
|
||
lib/
|
||
diagnostics.C
|
||
|
||
David June 1 2004
|
||
web stuff:
|
||
- fix bug in merging > 2 hosts
|
||
- remove references to html/forum in setup script
|
||
- move host_update_credit() to host.inc
|
||
and make an ops page for updating a host's credit
|
||
|
||
py/Boinc/
|
||
setup_project.py
|
||
|
||
David June 1 2004
|
||
- small web fixes related to moving forum files
|
||
html/
|
||
inc/
|
||
forum_show.inc
|
||
host.inc
|
||
util.inc
|
||
ops/
|
||
host_update_credit.php (new)
|
||
user/
|
||
forum_edit.php
|
||
forum_forum.php
|
||
forum_user_posts.php
|
||
host_edit_action.php
|
||
host_update_credit.php
|
||
|
||
David June 1 2004
|
||
- client: change benchmark interval from 30 days to 5 days
|
||
- Python: install_boinc_files(): don't copy sample_index.php
|
||
to index.php (overwrites file on running projects)
|
||
|
||
client/
|
||
cs_benchmark.C
|
||
html/user/
|
||
forum_thread.php
|
||
py/Boinc/
|
||
setup_project.py
|
||
|
||
David June 1 2004
|
||
- client: SCHEDULER_OP::poll(): if a RPC or master fetch fails for
|
||
a tentative project, set the RPC state to IDLE
|
||
before calling project_add_failed().
|
||
Otherwise that function will attempt to remove the
|
||
NET_XFER and HTTP_OP, which have alread been removed
|
||
- client: clean_out_dir(): return 0 if directory doesn't exist
|
||
client/
|
||
scheduler_op.C
|
||
lib/
|
||
filesys.C
|
||
|
||
Rom June 1 2004
|
||
- Give visual indictators as to whether the build is debug or release.
|
||
|
||
client/
|
||
client_state.C
|
||
client/win/
|
||
wingui_dialog.cpp
|
||
|
||
Rom June 1 2004
|
||
- Clean-up some server trace output.
|
||
|
||
sched/
|
||
handle_request.C
|
||
|
||
David June 2 2004
|
||
- client: cosmetic changes: "Account Key" -> "Account ID",
|
||
"BOINC Core Client" -> "BOINC software"
|
||
|
||
client/
|
||
gui_titles.C
|
||
win/
|
||
boinc_gui.rc
|
||
|
||
David June 2 2004
|
||
- API: if app init data file not present,
|
||
set standalone to true, don't return error
|
||
|
||
api/
|
||
boinc_api.C
|
||
|
||
Daniel June 3 2004
|
||
- client: handle_pers_file_xfers(): if file transfer fails,
|
||
then don't verify the file
|
||
- client: start_xfer(): need to assign fxp in order for
|
||
handle_xfer_failure() to work
|
||
|
||
client/
|
||
cs_files.C
|
||
pers_file_xfer.C
|
||
|
||
Karl 2004-06-04
|
||
- start: fixed bug where Python 2.3.3 writes 'True' instead of '1' to
|
||
run_state.xml
|
||
|
||
sched/
|
||
start
|
||
|
||
- fixed compile bugs
|
||
|
||
lib/
|
||
exception.h
|
||
util.C
|
||
|
||
- install_boinc_files(): *do* copy sample_index.php to index.php, unless
|
||
it already exists (otherwise test scripts don't work)
|
||
|
||
py/Boinc/
|
||
setup_project.py
|
||
|
||
- changed the default delay between requests for ResultMeter from 0.1 to
|
||
0.5 - this should help MySQL servers that disconnect under load. Also
|
||
added a message on how to change it.
|
||
|
||
- simplified code in ProjectList
|
||
|
||
- fixed MySQL access concurrency bug that caused test scripts to fail
|
||
sometimes (re-open new database connection)
|
||
|
||
test/
|
||
testbase.py
|
||
|
||
David June 6 2004
|
||
- add "ignore_upload_certificates" flag to config.xml;
|
||
tells file upload handler to skip certificate check
|
||
- web:
|
||
- unified list displays (team members, teams, hosts, users):
|
||
groups of 20 with sort links
|
||
- clean up profile code
|
||
- make team pages generic (not depend on viewing user)
|
||
- moved team quit/manage links to user page
|
||
- update_profile_pages.php: remove PHP 30-sec time limit
|
||
|
||
html/
|
||
inc/
|
||
gallery.inc
|
||
subscribe.inc
|
||
team.inc
|
||
user.inc
|
||
util.inc
|
||
ops/
|
||
update_profile_pages.php
|
||
user/
|
||
download_network.php
|
||
forum_edit.php
|
||
forum_post.php
|
||
prefs.php
|
||
profile_menu.php
|
||
sample_rss_main.php (new)
|
||
team_create_form.php
|
||
team_display.php
|
||
team_email_list.php
|
||
team_manage.php (new)
|
||
team_quit_form.php
|
||
top_hosts.php
|
||
top_teams.php
|
||
top_users.php
|
||
sched/
|
||
db_dump.C
|
||
file_upload_handler.C
|
||
handle_request.C
|
||
sched_config.C,h
|
||
|
||
David June 6 2004
|
||
- client: show error messages on errors linking structures
|
||
- PERS_FILE_XFER::giveup(): add "why" argument;
|
||
store in FILE_INFO::error_msg, and show to user
|
||
(all permanent xfer failures pass through here)
|
||
|
||
client/
|
||
client_state.C
|
||
pers_file_xfer.C,h
|
||
|
||
Karl 2004-06-08
|
||
- changed BOINC api calls to extern "C" -- makes it easier to call from
|
||
other languages (Fortran)
|
||
|
||
api/
|
||
boinc_api.h
|
||
apps/
|
||
upper-case.C
|
||
lib/
|
||
app_ipc.C
|
||
|
||
David 6 June 2004
|
||
- in strcpy2(), use strlcpy instead of strncpy
|
||
strncpy() always copies the full N bytes,
|
||
which is inefficient when there are long (64KB) fields
|
||
that are short or empty.
|
||
strlcpy() does what we want - it only copies significant bytes,
|
||
but doesn't go off the end of the destination buffer.
|
||
I also commented out the version of strlcpy in std_fixes.h -
|
||
this has the same performance problem.
|
||
- fixed "show team email addresses" function to not show auths
|
||
- temporarily turned off user search by name and team search by name;
|
||
we don't have indices on these fields
|
||
- file upload handler: show bad-certificate message even
|
||
if we're not enforcing it.
|
||
- scheduler: fix insufficient-speed message
|
||
- validator: print log messages if can't lookup/update anything
|
||
|
||
db/
|
||
db_base.h
|
||
html/
|
||
inc/
|
||
util.inc
|
||
user/
|
||
forum_text_search*
|
||
team_email_list.php
|
||
team_lookup.php
|
||
user_search_action.php
|
||
lib/
|
||
std_fixes.h
|
||
sched/
|
||
file_upload_handler.C
|
||
sched_send.C
|
||
validate.C
|
||
|
||
David 6 June 2004
|
||
- change boinc_sleep() to work correctly in the presence of signals
|
||
- add an implementation of strlcpy() for systems that don't have it
|
||
|
||
lib/
|
||
std_fixes.h
|
||
util.C,h
|
||
|
||
Rom 6 June 2004
|
||
- Enable GUI RPC's in the Windows Core Clients
|
||
- Move Winsock initialization out of each request to a per process thing
|
||
- Detect error condition where a socket initialization failure would cause
|
||
an error to be logged continuously
|
||
|
||
client/
|
||
client_state.C
|
||
gui_rpc_server.C
|
||
main.C
|
||
client/win/
|
||
win_net.cpp
|
||
win_net.h
|
||
wingui_mainwindow.cpp
|
||
|
||
David 9 June 2004
|
||
- changed boinc_rename() to do backoff and retry, like boinc_fopen()
|
||
- changed file system ops to use random backoff instead of 1 sec,
|
||
to avoid lockstep scenario
|
||
- changed implementation of strlcpy() to use existing
|
||
library functions (strlen(), memcpy()) since these
|
||
are probably faster than doing it by hand
|
||
- moved xml_util.C,h from boinc to seti_boinc/db
|
||
This code isn't used in BOINC
|
||
- changed all <? to <?php in doc files
|
||
|
||
db/
|
||
boinc_db.C
|
||
doc/
|
||
*
|
||
lib/
|
||
filesys.C
|
||
std_fixes.h
|
||
util.C,h
|
||
xml_util.C,h (removed)
|
||
|
||
Daniel 9 June 2004
|
||
- client: added check_idle() to update user_idle in unix.
|
||
only checks /dev/kbd and /dev/mouse for activity.
|
||
|
||
client/
|
||
client_state.C
|
||
client_state.h
|
||
cs_prefs.C
|
||
|
||
David 9 June 2004
|
||
- separation of functionality:
|
||
update_profile_pages.php rebuilds profile directory
|
||
pages (gallery, alphabetic, country)
|
||
May want to run this infrequently.
|
||
update_uotd.php chooses new UOTD
|
||
Should run this every day
|
||
- database: profile.verification is not null
|
||
|
||
Note: existing projects should modify their databases;
|
||
see html/ops/db_update.php
|
||
|
||
db/
|
||
schema.sql
|
||
html/
|
||
inc/
|
||
*.inc
|
||
ops/
|
||
db_update.php
|
||
profile_ops.php
|
||
update_profile_pages.php
|
||
update_uotd.php (new)
|
||
user/
|
||
explain_state.php
|
||
info.php
|
||
|
||
Rom 9 June 2004
|
||
- Put together the gui rpc testing application for Windows.
|
||
- Fix a bug or two with yesterdays checkin.
|
||
|
||
client/
|
||
gui_rpc_client.C, .h
|
||
gui_test.C
|
||
main.C
|
||
stdafx.cpp, .h
|
||
lib/
|
||
filesys.C
|
||
parse.h
|
||
win_build/
|
||
*.vcproj
|
||
|
||
Brian 10 June 2004
|
||
- changed get_log_path to create log directory dynamically if
|
||
not already present on server
|
||
|
||
sched/
|
||
main.C
|
||
file_upload_handler.C
|
||
|
||
David 10 June 2004
|
||
- Web caching system: use only the filename part of URL
|
||
to determine cache file name
|
||
(so that files are directly in html/cache).
|
||
No "_" if no params.
|
||
- web: allow more HTML tags (ul, ol, li)
|
||
- web: in seeing if projects is stopped, look for
|
||
"stop_sched" and "stop_daemons" rather than "stop_servers"
|
||
(forgot to make this change on May 3 2004)
|
||
- web: turn off user name search (until we have indices)
|
||
- web: change Mac install instructions to match Unix
|
||
- setup_project.py: copy html/inc/GioIP.dat also
|
||
- start script: remove cached home page when start or stop project.
|
||
|
||
html/
|
||
inc/
|
||
cache.inc
|
||
sanitize_html.inc
|
||
util.inc
|
||
user/
|
||
account_setup_first_download.php
|
||
account_setup_nonfirst_done.php
|
||
user_search_action.php
|
||
py/Boinc/
|
||
setup_project.py
|
||
sched/
|
||
start
|
||
|
||
Rom 10 June 2004
|
||
- Fix a few bugs on the Windows platform so that the GUI RPC's will now
|
||
work on Windows. I've tested it with telnet, the new GUI will follow
|
||
|
||
client/
|
||
gui_rpc_client.C
|
||
gui_rpc_server.C, .h
|
||
net_xfer.C
|
||
win_build
|
||
*.vcproj
|
||
|
||
David 10 June 2004
|
||
- added "-allow_remote_gui_rpc command line flag
|
||
to allow GUI RPCs from remote hosts (courtesy of Rob Oglivie)
|
||
|
||
client/
|
||
client_state.C,h
|
||
cs_cmdline.C
|
||
gui_rpc_server.C
|
||
|
||
Karl 2004-06-11
|
||
- added feature to START to prune obsolete run_state timestamps
|
||
|
||
sched/
|
||
start
|
||
py/Boinc/
|
||
boincxml.py
|
||
|
||
David 11 June 2004
|
||
- updated sample_index.php and sample project.inc
|
||
- project_banner() now takes title, not user
|
||
- check for project stopped, show news even if stopped
|
||
- add user of the day
|
||
- Get rid of project_intro(), project_community() functions;
|
||
just put this stuff directly in your own index.php
|
||
- add install of sample_index.php, project_news.inc
|
||
to setup_project
|
||
- db_dump: if can't get result counts, keep going
|
||
|
||
html/
|
||
inc/
|
||
uotd.inc
|
||
project.sample/
|
||
project.inc
|
||
user/
|
||
sample_index.php
|
||
py/Boinc/
|
||
setup_project.py
|
||
sched/
|
||
db_dump.C
|
||
|
||
Rom 11 June 2004
|
||
- Change debug messages in the GUI RPC interface to log flags.
|
||
- Add log flag <guirpc_bug/>
|
||
|
||
client/
|
||
client_msgs.C, .h
|
||
gui_rpc_server.C
|
||
log_flags.C, .h
|
||
doc/
|
||
client_debug.php
|
||
|
||
Jeff 11 June 2004
|
||
- The start script now forks before exec'ing the ssh start to remote hosts.
|
||
Without this, start would run "start" on the first remote host it finds
|
||
in the config file but would go no further.
|
||
|
||
sched/
|
||
start
|
||
|
||
Daniel 11 June 2004
|
||
- client: check_idle() now also checks /dev/tty[1-7] (linux).
|
||
Also put idle checks under #ifdefs. MacOS X idle checks
|
||
will be more difficult.
|
||
|
||
configure
|
||
configure.ac
|
||
config.h.in
|
||
client/
|
||
cs_prefs.C
|
||
|
||
David 11 June 2004
|
||
- Windows sockets can't be used in fdopen() (thank you MS),
|
||
and we wanted all the standard XML output functions
|
||
to be able to write to either disk or socket (for GUI RPC).
|
||
So we added a class MIOFILE, with printf() and fgets() member funcs,
|
||
that can be implemented with either a FILE* or a memory buffer
|
||
under the hood.
|
||
- Moved MFILE from api/ to lib/ since it's used in the implementation
|
||
of MIOFILE
|
||
- Changed all XML write and parse functions to take MIOFILE&
|
||
instead of FILE*
|
||
- Changed GUI RPC client code to use MIOFILEs
|
||
- Changed GUI RPC protocol so that every reply message
|
||
ends with a \003 delimiter
|
||
(to make it unambiguous where reply ends)
|
||
- removed version number header from GUI RPC (rethink this later)
|
||
|
||
Got this all to work on Unix; will try Windows next
|
||
|
||
api/
|
||
Makefile.am
|
||
mfile.C,h (moved from here)
|
||
client/
|
||
Makefile.am
|
||
app.C,h
|
||
client_state.h
|
||
client_types.C,h
|
||
cs_scheduler.C
|
||
cs_statefile.C
|
||
gui_rpc_client.C,h
|
||
gui_rpc_server.C,h
|
||
gui_test.C
|
||
hostinfo.C,h
|
||
makefile.gui_test
|
||
miofile.C,h (new)
|
||
net_stats.C,h
|
||
net_xfer.h
|
||
pers_file_xfer.h
|
||
proxy.C,y
|
||
scheduler_op.C
|
||
time_stats.C,h
|
||
doc/
|
||
client_sched.php (new)
|
||
lib/
|
||
Makefile.am
|
||
mfile.C,h (moved to here)
|
||
|
||
David 11 June 2004
|
||
- get core client to compile on Win
|
||
- graphics API: change max frame rate from 10 to 33.3
|
||
|
||
api/
|
||
windows_opengl.C
|
||
client/
|
||
gui_rpc_server.C
|
||
miofile.h
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
boinc_gui.vcproj
|
||
|
||
David 11 June 2004
|
||
- moved idle-time funcs from cs_prefs.C to hostinfo_unix.C
|
||
- fixed handling of "messages" in GUI RPC
|
||
|
||
client/
|
||
cs_prefs.C
|
||
gui_rpc_client.C
|
||
gui_rpc_server.C
|
||
hostinfo_unix.C
|
||
|
||
Rom June 12 2004
|
||
- Cleanup build errors on Windows
|
||
- Fix the <run_benchmarks/> gui rpc to match documentation
|
||
|
||
api/
|
||
boinc_api.C, .h
|
||
gutil.C
|
||
client/
|
||
gui_rpc_client.C
|
||
gui_rpc_server.C
|
||
lib/
|
||
diagnostics.C
|
||
parse.h
|
||
shmem.C
|
||
util.C, .h
|
||
win_build/
|
||
boinc_guirpc_test.vcproj
|
||
upper_case.vcproj
|
||
|
||
David June 12 2004
|
||
- fix compile errors on Unix
|
||
|
||
apps/
|
||
Makefile.am,in
|
||
|
||
David June 12 2004
|
||
- added support for name/passwd authentication to HTTP proxies.
|
||
Includes changes to the proxy settings dialog,
|
||
and to the HTTP_OP class.
|
||
All this courtesy of Kenichi Miyoshi and his colleagues
|
||
at NTT - thanks!
|
||
|
||
client/
|
||
http.C,h
|
||
proxy.C,h
|
||
win/
|
||
boinc_gui.h,rc
|
||
wingui_proxydlg.cpp,h
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
boinc_gui.vcproj
|
||
|
||
David 13 June 2004
|
||
- fix typo on "start"
|
||
- don't allow empty thread titles
|
||
|
||
html/inc/
|
||
forum.inc
|
||
news.inc
|
||
uotd.inc
|
||
sched/start
|
||
|
||
Rom 13 June 2004
|
||
- Don't dangle sockets when the request doesn't come from the loopback
|
||
adapter. Thanks to Sebastian Masch for pointing out the bug and solution.
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
|
||
Rom 13 June 2004
|
||
- Do some more header file work and fix util.c so it'll compile on unix
|
||
platforms again.
|
||
|
||
client/
|
||
miofile.C, .h
|
||
stdafx.h
|
||
lib/
|
||
base64.C, .h
|
||
util.C
|
||
|
||
Rom 13 June 2004
|
||
- Minor tweaks so you can setup a new project
|
||
|
||
py/Boinc/
|
||
setup_project.py
|
||
sched/
|
||
start
|
||
|
||
Karl 2004-06-14
|
||
- 'start': simplified remote fork/exec logic, and added option for
|
||
parallel/sequential delegation to remote hosts (default sequential)
|
||
|
||
sched/
|
||
start
|
||
|
||
Rom 14 June 2004
|
||
- Fix clientside GUI RPC calls so the test app will work.
|
||
- Fix util.C so cross-platform compliation
|
||
|
||
client/
|
||
gui_rpc_client.C
|
||
lib/
|
||
util.c
|
||
|
||
David 14 June 2004
|
||
- Email addresses in the DB should ALWAYS be lower-case,
|
||
with no leading or trailing white space.
|
||
Add code (trim, strtolower) to enforce this.
|
||
Existing databases should be cleaned up.
|
||
|
||
html/user/
|
||
confirm_email_change.php
|
||
create_account_action.php
|
||
edit_email_action.php
|
||
login_action.php
|
||
mail_passwd.php
|
||
|
||
Daniel 14 June 2004
|
||
- changed uses of mysql_fetch_assoc() to mysql_fetch_object()
|
||
- removed utility function get_profile_from_userid() (not used
|
||
anywhere)
|
||
- added proposal for new client result scheduling: please review!
|
||
|
||
doc/
|
||
client_sched.php
|
||
html/inc/
|
||
subscribe.inc
|
||
util.inc
|
||
html/ops/
|
||
migrate_tables.php
|
||
profile_ops.php
|
||
|
||
Rom 14 June 2004
|
||
- Add check for minor version change which will cause the client to
|
||
rerun the benchmark code.
|
||
|
||
client/
|
||
client_state.C
|
||
|
||
Daniel 14 June 2004
|
||
- client: Returning results due to "-return_results_immediately"
|
||
no longer tries to fetch work unless it's needed.
|
||
- client: Added "-check_all_logins" command-line option to force
|
||
idle checking to look at all users' terminals.
|
||
|
||
config.h.in
|
||
configure
|
||
configure.ac
|
||
client/
|
||
Makefile.in
|
||
client_state.C
|
||
client_state.h
|
||
cs_cmdline.C
|
||
cs_scheduler.C
|
||
hostinfo_unix.C
|
||
|
||
Rom 14 June 2004
|
||
- Add two additional tools to the default install
|
||
parse_config - Parses the config file looking for the requested config
|
||
information.
|
||
db_query - Queries the database for specific information in a
|
||
stripchart compatible format.
|
||
|
||
py/boinc/
|
||
setup_project.py
|
||
tools/
|
||
parse_config
|
||
db_query
|
||
|
||
Karl 2004-06-15
|
||
- added compatibility for old versions of python XML library
|
||
|
||
py/Boinc/
|
||
boincxml.py
|
||
|
||
- created Fortran wrapper
|
||
|
||
api/
|
||
boinc_api_fortran.C
|
||
|
||
Daniel 15 June 2004
|
||
- html: got rid of file descriptor parameters for a lot of
|
||
functions (esp. those used by gallery.inc). using output
|
||
buffering now (ob_start(), ob_get_contents(), etc.)
|
||
|
||
html/
|
||
inc/
|
||
gallery.inc
|
||
profile.inc
|
||
util.inc
|
||
project.sample/
|
||
project.inc
|
||
user/
|
||
project.inc.sample
|
||
|
||
Rom 15 June 2004
|
||
- Move shell scripts that were in the sched folder to the tools folder
|
||
- remove start_servers.C and kill_server
|
||
- Move watchdog scripts to ops folder
|
||
|
||
html/ops/
|
||
watchdogs.php (added)
|
||
wd_nresults_changing.php (added)
|
||
py/boinc/
|
||
setup_project.py
|
||
sched/
|
||
kill_server (removed)
|
||
start_servers.C (removed)
|
||
wd.php (removed)
|
||
wd_nresults_changing.php (removed)
|
||
watch_tcp (removed)
|
||
grep_logs (removed)
|
||
tools/
|
||
watch_tcp (added)
|
||
grep_logs (added)
|
||
|
||
Rom June 15 2004
|
||
- Tag for 3.08 release, all platforms
|
||
boinc_core_release_3_08
|
||
seti_boinc_app_release_3_08
|
||
|
||
David 15 June 2004
|
||
- Database inserts and updates from C++ (boinc_db.C)
|
||
were of the form "insert into foo set id=x, a=y,...".
|
||
Removed the "id=x" part.
|
||
The ID field should never be explicitly set.
|
||
- add index on user.name
|
||
|
||
NOTE: projects should do this on their DB (see html/ops/db_update.php).
|
||
Otherwise user name search will be slow.
|
||
|
||
db/
|
||
boinc_db.C
|
||
constraints.sql
|
||
html/ops;
|
||
db_update.php
|
||
|
||
Daniel 15 June 2004
|
||
- html: Fixed bugs in gallery that caused database failures.
|
||
Fixed some bugs in building summary pages.
|
||
|
||
html/inc/
|
||
gallery.inc
|
||
profile.inc
|
||
|
||
Daniel 15 June 2004
|
||
- client: put all_logins_idle under an ifdef to check for
|
||
availability of {set,get}utent. TODO: implement these for BSD.
|
||
|
||
aclocal.m4
|
||
config.h.in
|
||
configure
|
||
configure.ac
|
||
client/
|
||
hostinfo_unix.C
|
||
|
||
|
||
Karl 2004-06-16
|
||
|
||
- Compile fixes
|
||
- Removed windows MSVC-specific pre-compiled header stuff from API
|
||
headers and modules, since these are compiled/included by external
|
||
projects and do not use the same stdafx.h.
|
||
|
||
lib/
|
||
app_ipc.h
|
||
|
||
api/
|
||
boinc_api.h
|
||
boinc_api.C
|
||
|
||
- Fortran wrapper: Return value fixes
|
||
|
||
api/
|
||
boinc_api_fortran.C
|
||
|
||
David 16 June 2004
|
||
- make team pages cached
|
||
- enable user name search
|
||
|
||
html/
|
||
inc/
|
||
team.inc
|
||
user/
|
||
team_display.php
|
||
user_search_action.php
|
||
|
||
David 16 June 2004
|
||
- Added <host_info> to app_init_data.xml file,
|
||
passed to applications (for Folding@home).
|
||
This necessitated shuffline some code to
|
||
move write/parse code from client/ to lib/
|
||
|
||
client/
|
||
app.C
|
||
hostinfo.C,h (moved from client/ to lib/)
|
||
hostinfo_network.C,h (new)
|
||
miofile.C,h (moved from client/ to lib/)
|
||
win/
|
||
hostinfo_win.cpp
|
||
lib/
|
||
app_ipc.C,h
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
boinc_gui.vcproj
|
||
upper_case.vcproj
|
||
|
||
|
||
David 16 June 2004
|
||
- unix compile fixes for the above change
|
||
|
||
client/
|
||
Makefile.am
|
||
hostinfo_unix.C
|
||
lib/
|
||
Makefile.am
|
||
sched/
|
||
Makefile.am
|
||
|
||
Daniel 16 June 2004
|
||
- client: added implementations of {set,get}utent for lacking
|
||
systems (BSD, MacOSX) so all_logins_idle() will work.
|
||
|
||
client/
|
||
hostinfo_unix.C
|
||
|
||
David 16 June 2004
|
||
- renamed client/stdafx.h to lib/boinc_win.h
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
stdafx.cpp
|
||
stdafx.h (removed)
|
||
lib/
|
||
boinc_win.h (new)
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
boinc_gui.vcproj
|
||
boinc_guirpc_test.vcproj
|
||
|
||
David 16 June 2004
|
||
- scheduler returns message to client in case of internal errors
|
||
|
||
sched/
|
||
main.C,h
|
||
handle_request.C
|
||
|
||
David 16 June 2004
|
||
- change includes from stdafx.h to boinc_win.h
|
||
- add 1o-minute timeout on all network transfers
|
||
|
||
client/
|
||
*.C
|
||
lib/
|
||
*.C
|
||
|
||
Rom 16 June 2004
|
||
- Additional include changes from stdafx.h to boinc_win.h
|
||
|
||
api/
|
||
*.C
|
||
client/
|
||
*.C
|
||
lib/
|
||
*.C
|
||
|
||
David 16 June 2004
|
||
- a few additions to the above
|
||
|
||
api/
|
||
graphics_api.C
|
||
gutil.C
|
||
reduce.C
|
||
static_graphics.C
|
||
windows_opengl.C
|
||
client/
|
||
cpu_benchmark (removed)
|
||
message.C (removed)
|
||
win/
|
||
wingui.h
|
||
lib/
|
||
boinc_win.h
|
||
win_build/
|
||
boinc_gui.vcproj
|
||
|
||
David 16 June 2004
|
||
- fixed shocking error in http.C:
|
||
in poll function (HTTP_OP_SET::poll()),
|
||
check for error conditions at the beginning,
|
||
outside of the switch on http_op_state.
|
||
Previously we were checking for errors only in a couple of states
|
||
(CONNECTING, REPLY_BODY) and errors in other states would go undetected.
|
||
This could account for hangs in file uploads, scheduler RPCs
|
||
|
||
client/
|
||
http.C
|
||
|
||
Rom 16 June 2004
|
||
- Fix HTTP:OP bug where on an upload and the server responds with a 404-
|
||
not found for the file_upload_handler would cause the client
|
||
to delete the result file.
|
||
|
||
client/
|
||
pers_file_xfer.C
|
||
|
||
Rom June 15 2004
|
||
- Tag for 3.09 release, all platforms
|
||
boinc_core_release_3_09
|
||
|
||
David 16 June 2004
|
||
- Change how messages are stored in memory in core client
|
||
- use a list instead of a vector, ordered new to old
|
||
- max of 1000 messages (MAX_SAVED_MESSAGES)
|
||
- add seqno to MESSAGE_DESC
|
||
- change GUI RPC for getting messages.
|
||
Instead of "offset", has a "seqno" arg.
|
||
If nonzero, this is the minimum seqno to return
|
||
- add message-storage logic to Windows client
|
||
|
||
|
||
client/
|
||
client_msgs.C,h
|
||
gui_rpc_server.C
|
||
main.C
|
||
win/
|
||
wingui.cpp
|
||
lib/
|
||
boinc_win.h
|
||
win_build/
|
||
boinc_guirpc_test.vcproj
|
||
|
||
David 16 June 2004
|
||
- get GUI RPC working on UNIX
|
||
|
||
client/
|
||
Makefile.am
|
||
client_msgs.C,h
|
||
gui_rpc_client.C,h
|
||
makefile.gui_test
|
||
|
||
Rom June 16 2004
|
||
- Tag for 3.10 release, all platforms
|
||
boinc_core_release_3_10
|
||
|
||
David 17 June 2004
|
||
- Change the way we get local host's domain name on UNIX:
|
||
instead of gethostbyname()
|
||
(which has nightmarish linkage problems that no one quite understands)
|
||
use "ping", which we assume exists on all UNIX systems,
|
||
and parse its output
|
||
- Allow Python scripts to access remote databases
|
||
(courtesy of Carl C.)
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
hostinfo_network.C,h
|
||
hostinfo_unix.C
|
||
win/
|
||
hostinfo_win.cpp
|
||
py/Boinc/
|
||
database.py
|
||
|
||
David 17 June 2004
|
||
- Not so fast! "ping -c 1 hostname" hangs forever on Linux
|
||
if hostname is unreachable.
|
||
"ping -c 1 -w 1 hostname" works,
|
||
but the -w option doesn't exist on Solaris!
|
||
So...
|
||
try with -w, and if get an error, try without.
|
||
Hope this is the end of the story.
|
||
|
||
client/
|
||
hostinfo_network.C
|
||
|
||
Rom June 17 2004
|
||
- Enable the low-water mark for the work queue again.
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
|
||
David June 17 2004
|
||
- Fix bonehead mistake in ping/hostname code
|
||
(thanks to Rob Oglivie)
|
||
- Fix memory leak in GUI RPC
|
||
(thanks to Sebastian Masch)
|
||
|
||
client/
|
||
gui_rpc_client.C
|
||
gui_rpc_server.C
|
||
hostinfo_network.C
|
||
lib/
|
||
app_ipc.h
|
||
mfile.h
|
||
|
||
David June 17 2004
|
||
- looser definition of "same platform" when using homogeneous redundancy
|
||
(Courtesy of Pietro Cicotti)
|
||
|
||
sched/
|
||
sched_send.C
|
||
|
||
Rom June 17 2004
|
||
- Tag for 3.12 release, all platforms
|
||
boinc_core_release_3_12
|
||
|
||
Rom June 17 2004
|
||
- Tag for 3.13 release, all platforms
|
||
boinc_core_release_3_13
|
||
|
||
David 17 June 2004
|
||
- enforce the application.deprecated flag in the scheduler.
|
||
When scanning the database, the feeder ignores deprecated apps
|
||
and any associated app versions and workunit/results
|
||
|
||
sched/
|
||
feeder.C
|
||
sched_shmem.C,h
|
||
|
||
Daniel 17 June 2004
|
||
- Determine utmp location at compile time so idle checking works on MacOSX
|
||
- get_local_network_info(): Redirect ping stderr to /dev/null
|
||
|
||
config.h.in
|
||
configure
|
||
configure.ac
|
||
client/
|
||
hostinfo_unix.C
|
||
hostinfo_network.C
|
||
|
||
Rom 17 June 2004
|
||
- Add an additional path to the list of pings to try.
|
||
/usr/sbin
|
||
|
||
client/
|
||
hostinfo_network.C
|
||
|
||
Rom June 17 2004
|
||
- Tag for 3.13 release, all platforms
|
||
boinc_core_release_3_13
|
||
|
||
David 2004.06.17
|
||
- /usr/sbin/ping has different options than others.
|
||
Revise get_local_network_info().
|
||
If all variants of ping fail,
|
||
set hostname="unknown" and ip_addr="0.0.0.0"
|
||
and print a helpful message.
|
||
- show more command line options
|
||
|
||
client/
|
||
cs_cmdline.C
|
||
cs_scheduler.C
|
||
hostinfo_network.C
|
||
hostinfo_unix.C
|
||
|
||
David 2004.06.18
|
||
- punt the ping/gethostbyname issue for now;
|
||
just get the hostname (not domain)
|
||
and set IP address to "unknown".
|
||
|
||
client/
|
||
hostinfo_network.C
|
||
|
||
Karl 2004-06-18
|
||
- makefile cleanup
|
||
|
||
*/Makefile.am
|
||
|
||
Rom June 18 2004
|
||
- Update screensaver logic to determine the difference between
|
||
'no work avaliable' and the active tasks cannot display graphics.
|
||
|
||
client/
|
||
ss_logic.C
|
||
|
||
Rom June 18 2004
|
||
- Tag for 3.15 release, all platforms
|
||
boinc_core_release_3_15
|
||
|
||
David 2004.06.18
|
||
- Undo the checkin of Mar 4 2004 that changed the "report deadline"
|
||
based on connected_frac etc.
|
||
Just use 24 hours.
|
||
- Undo checkin of June 14 2004 that didn't fetch work
|
||
if return_results_immediately is set;
|
||
this broke test_uc.py
|
||
|
||
client/
|
||
client_state.h
|
||
cs_scheduler.C
|
||
|
||
David 2004.06.18
|
||
- Aaargh! I forgot that gethostbyname() is unavoidably used
|
||
when contacting servers, so all this ping stuff
|
||
is a total waste of time!
|
||
Changed things back to the way they were originally.
|
||
|
||
client/
|
||
hostinfo_network.C
|
||
net_xfer.C
|
||
|
||
Rom June 18 2004
|
||
- Tag for 3.16 release, all platforms
|
||
boinc_core_release_3_16
|
||
|
||
|
||
David 2004.06.18
|
||
- add timestamps to messages written stdout/err.txt in Win
|
||
|
||
client/win/
|
||
wingui.cpp
|
||
|
||
David 2004.06.18
|
||
- updated zip/unzip files (from Carl)
|
||
|
||
lib/
|
||
boinc_zip.C,h (removed)
|
||
zip/
|
||
various
|
||
|
||
Rom June 19 2004
|
||
- Tag for 3.17 release, all platforms
|
||
boinc_core_release_3_17
|
||
|
||
Rom June 19 2004
|
||
- Lengthen the benchmarks so even on slow machines they won't get stuck in an
|
||
endless loop waiting on a file that has already come and gone.
|
||
|
||
client/
|
||
cs_benchmark.C
|
||
|
||
Rom June 19 2004
|
||
- Tag for 3.18 release, all platforms
|
||
boinc_core_release_3_18
|
||
|
||
David 20 June 2004
|
||
- db_dump.C: major revision: make it configurable,
|
||
using an XML config file.
|
||
Lets you say what you want exported,
|
||
how to sort, whether to compress etc.
|
||
- destroy_shmem: try to destroy even if there are attachments.
|
||
Somehow ipcrm always destroys the seg. How do they do it?
|
||
- assimilator: print error and exit if handler returns nonzero
|
||
|
||
lib/
|
||
shmem.C
|
||
sched/
|
||
assimilator.C
|
||
db_dump.C
|
||
|
||
David 21 June 2004
|
||
- Web: when displaying results, try to show "---" (i.e. undefined)
|
||
where a field isn't determined yet.
|
||
Show "pending" instead of 0 for granted credit of unvalidated results
|
||
|
||
html/inc/
|
||
result.inc
|
||
|
||
Brian 22 June 2004
|
||
- server: renamed all functions, structures and database items that
|
||
associated with trickle_up or down and renamed to
|
||
msg_from_host and msg_to_host repectively,
|
||
- Deleted result and app fields from the database entry for
|
||
msg_from_host (trickle_up) to make more generic of a
|
||
message that has no app or result associated it with it
|
||
- Changed methods that use these fields to ignore old
|
||
functionality, will update when new method agreed upon
|
||
- sched/
|
||
handle_request.C
|
||
sched_config.C
|
||
sched_config.h
|
||
server_types.h
|
||
- db/
|
||
schema.sql
|
||
BOINC_db.C
|
||
constraints.sql
|
||
|
||
David 22 June 2004
|
||
- client: handle a "down for maintenance" RPC reply as a failure,
|
||
i.e. do a backoff on the project.
|
||
This should hopefully fix a problem where if
|
||
a project is down, and a client has a result to report,
|
||
it will do an RPC every second, creating an overload on the server.
|
||
Do this by adding a new optional <project_is_down/> element
|
||
to scheduler replies.
|
||
- If get a <request_delay> from scheduler,
|
||
don't let that override the current min_rpc_time;
|
||
instead, take the max of the two.
|
||
- Change the implementation of trickle messages.
|
||
Instead of using dedicated trickle_up and trickle_down DB tables,
|
||
use more general msg_from_host and msg_to_host tables.
|
||
These will be used also for data management,
|
||
i.e. to send upoad or download requests to specific hosts.
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
scheduler_op.C,h
|
||
db/
|
||
boinc_db.C,h
|
||
schema.sql
|
||
lib/
|
||
error_numbers.h
|
||
sched/
|
||
assimilator.C
|
||
handle_request.C
|
||
main.C
|
||
server_types.C,h
|
||
trickle_handler.C
|
||
|
||
Karl 2004-06-24
|
||
- OpenBSD compile fixes from Daniel Hartmeier <daniel@benzedrine.cx>
|
||
|
||
lib/
|
||
util.C
|
||
filesys.C
|
||
|
||
sched/
|
||
sched_send.C
|
||
|
||
Karl 2004-06-24
|
||
- update_versions: only match exec_file if it's the same as the directory.
|
||
This makes executable selection deterministic.
|
||
|
||
tools/
|
||
update_versions
|
||
|
||
David 24 June 2004
|
||
- turn off sorting in team member display (slow query)
|
||
- show only up to 1000 users/teams/hosts
|
||
- use URL_BASE instead of MASTER_URL in page_tail()
|
||
- fix php typos
|
||
|
||
html/
|
||
inc/
|
||
team.inc
|
||
util.inc
|
||
user/
|
||
team_display.php
|
||
top_*.php
|
||
|
||
Brian 24 June 2004
|
||
- msg_from_host no longer have preceding and trailing flags in
|
||
scheduler reply. All tags will be included as part of the XML blob
|
||
to be created by whatever program handles the message.
|
||
|
||
Sched/
|
||
server_types.C
|
||
|
||
Rom 25 June 2004
|
||
- Numerious file additions to the new client gui
|
||
- Fixed a user feedback issue between restarting vs. resuming text when
|
||
describing restarting of a task.
|
||
- Limit the transitioner to a resultset of 5000 in it's workunit query so
|
||
it doesn't spend so much time waiting on the database and order by tansition_time
|
||
so we see the oldest to the newest.
|
||
- Include the prototypes of the new language translation files based off of
|
||
the standards used the wxWidgets, These files were constructed using an
|
||
automated tool called poEdit.
|
||
|
||
client/
|
||
app.C
|
||
clientgui/
|
||
<Lots of various files>
|
||
clientgui/locale/
|
||
en_US.*
|
||
sched/
|
||
transitioner.C
|
||
|
||
Rom 25 June 2004
|
||
- Add the ability to just shutdown the website so we can reduce traffic
|
||
|
||
html/inc/
|
||
util.inc
|
||
|
||
Karl 2004-06-27
|
||
- fix to log directory creation from Chrischan <christian.linder@uni-bielefeld.de>
|
||
|
||
sched/
|
||
main.C
|
||
|
||
David 27 June 2004
|
||
- add a -mod N I option to the transitioner;
|
||
causes the transitioner to handle only WUs for which ID % N == I.
|
||
Can use this to parallelize the transitioner,
|
||
either on a single multi-CPU machine or across multiple machines
|
||
|
||
sched/
|
||
transitioner.C
|
||
|
||
David 27 June 2004
|
||
- changes (from Carl C.) to get rid of signal usage in zip/unzip code
|
||
|
||
zip/unzip
|
||
fileio.c
|
||
unzip.c
|
||
zip/zip
|
||
zip.c
|
||
zipcloak.c
|
||
zipnote.c
|
||
zipsplit.c
|
||
|
||
David 27 June 2004
|
||
- Added core->app heartbeat mechanism so that apps will quit
|
||
if the core client dies
|
||
(i.e. if no heartbeat message arrives in 5 seconds).
|
||
Suppress this if app is standalone.
|
||
Also provide messages that let the core disable/enable
|
||
the mechanism (to support debugging of the core client)
|
||
- Added a 3rd message channel for suspend/resume/quit messages,
|
||
to replace signals.
|
||
This isn't used now.
|
||
- Restored code in APP_CLIENT_SHM that checks the "full" bit
|
||
before writing a message.
|
||
This may cause problems.
|
||
|
||
NOTE: this is a backwards-incompatible change to the core/app
|
||
interface, so it requires a major version change (will do later)
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
app.C,h
|
||
lib/
|
||
app_ipc.C,h
|
||
|
||
David 27 June 2004
|
||
- Add a lock file mechanism to prevent two apps
|
||
from running in the same slot at the same time.
|
||
boinc_init() tries to lock the file;
|
||
if it fails, wait for 7 seconds to allow the old process to die
|
||
(the heartbeat timeout is 5 seconds) then try again.
|
||
If fail again, exit.
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
client_state.C
|
||
hostinfo_unix.C
|
||
lib/
|
||
app_ipc.h
|
||
|
||
Rom 27 June 2004
|
||
- Prevent the reuse of shared memory segments with ones that are already
|
||
in use on Windows.
|
||
|
||
client/
|
||
app.C
|
||
lib/
|
||
shmem.C
|
||
|
||
Rom 27 June 2004
|
||
- Introduce the notion of high priority queries for mysql queries and
|
||
implement them for the transitioner
|
||
|
||
db/
|
||
db_base.C, .h
|
||
sched/
|
||
transitioner.C
|
||
|
||
Karl 2004-06-28
|
||
- added configure-time option for building server+client or only client
|
||
(--disable-server or --enable-server)
|
||
|
||
configure.ac
|
||
Makefile.am
|
||
|
||
m4/
|
||
kc_mysql.m4
|
||
|
||
[regenerated: configure, aclocal.m4, */Makefile.in]
|
||
|
||
Daniel 29 June 2004
|
||
- Check user idle time only if preferences require.
|
||
Some users worried that we were sniffing the keyboard.
|
||
- get rid of the CLIENT_STATE::user_idle variable;
|
||
call the function directly
|
||
- on Windows, move logic from GUI code to non-GUI (hostinfo_win.cpp)
|
||
|
||
client/
|
||
client_state.C,h
|
||
cs_files.C
|
||
cs_prefs.C
|
||
hostinfo_unix.C
|
||
win/
|
||
hostinfo_win.cpp
|
||
wingui_mainwindow.cpp,h
|
||
lib/
|
||
hostinfo.h
|
||
|
||
David 29 June 2004
|
||
- fix window compile by moving DLL handle out of HOSTINFO class
|
||
|
||
client/
|
||
app.C
|
||
win/
|
||
hostinfo_win.cpp
|
||
wingui_mainwindow.cpp
|
||
lib/
|
||
hostinfo.h
|
||
|
||
Daniel 29 June 2004
|
||
- New client CPU scheduler, as specified in client_sched.php
|
||
- Fixed NULL pointer bug in create_shmem when calling with pp=NULL
|
||
(fixed by Dave)
|
||
|
||
client/
|
||
app.{C,h}
|
||
client_state.{C,h}
|
||
client_types.{C,h}
|
||
cs_apps.C
|
||
cs_prefs.C
|
||
cs_scheduler.C
|
||
cs_statefile.C
|
||
gui_titles.C
|
||
gui_titles.h
|
||
win/
|
||
wingui_mainwindow.cpp
|
||
lib/
|
||
shmem.C
|
||
|
||
Karl 2004-06-30
|
||
|
||
- updated 'about' dialog to remove "beta" and add UCB SSL copyright
|
||
|
||
client/
|
||
win/
|
||
boinc_gui.rc
|
||
|
||
- visual studio installer projects (create MSIs)
|
||
|
||
boinc_setup creates an MSI with dialogs and options (launch on bootup,
|
||
desktop icon, etc.). boinc_setup_auto creates an MSI that installs
|
||
immediately with no prompting, ideal for Windows group policy to apply
|
||
to many computers
|
||
|
||
win_build/
|
||
boinc_setup.vdproj
|
||
boinc_setup_auto.vdproj
|
||
|
||
David 30 June 2004
|
||
- PHP code: change parse_config() so that it doesn't
|
||
read the config file; you have to read it first into a variable
|
||
(using get_config()) and pass it in to parse_config()
|
||
This saves work when you want to look at several config params.
|
||
- db_init(): parse the DB hostname and use it in mysql_connect.
|
||
This lets you run the web site from a different host than DB
|
||
- disallow caching of top_* pages with random offsets
|
||
- change cache period of top_* pages to 12 hours
|
||
- fix bug in user name search (escape _, %)
|
||
|
||
html/
|
||
inc/
|
||
db.inc
|
||
db_ops.inc
|
||
util.inc
|
||
user/
|
||
create_account_action.php
|
||
create_account_form.php
|
||
profile_menu.php
|
||
sample_rss_main.php
|
||
top_hosts.php
|
||
top_teams.php
|
||
top_users.php
|
||
|
||
Eric K 30 June 2004
|
||
- Removed "using" directives from header files. "using"
|
||
directives should not be used in header files for the following reasons.
|
||
- A "using namespace" directive cannot be revoked for any source file
|
||
including the header. It forces the use of the namespace regardless of
|
||
the consequences.
|
||
- Dropping the namespace qualifier on STL templates ambiguates the
|
||
resolution of template functions. (How many C libraries or headers
|
||
have you seen that define the function min()?)
|
||
- Reducing typing is not a good reason to drop namespace qualifiers any
|
||
more than it would be a good idea to "#define p printf"
|
||
- Namespaces exist for a reason.
|
||
- It's acceptable to have "using" directive in a source file, since it
|
||
won't affect other files. It's better to have "using std::string;"
|
||
directives than "using namespace std;" for hopefully obvious reasons.
|
||
|
||
David 30 June 2004
|
||
- change feeder query to eliminate 'order by random'
|
||
and add a limit of 100.
|
||
- change db_dump to not get counts, since these are slow on InnoDB
|
||
|
||
sched/
|
||
db_dump.C
|
||
feeder.C
|
||
|
||
Daniel 30 June 2004
|
||
- Continuing Eric's vanquishing of "using" directives from header
|
||
files. Moved "using" directives from inside "#ifndef _WIN32"
|
||
blocks. Should compile under Windows now.
|
||
|
||
client/
|
||
client_msgs.C
|
||
win/
|
||
wingui_mainwindow.cpp
|
||
wingui_mainwindow.h
|
||
lib/
|
||
miofile.C
|
||
msg_log.C
|
||
parse.C
|
||
util.C
|
||
|
||
Daniel 30 June 2004
|
||
- Minor changes: changed scheduling period from 30 secs to 1 hour.
|
||
- Got rid of float.h in cs_apps.C.
|
||
|
||
client/
|
||
client_state.C
|
||
cs_apps.C
|
||
|
||
Brian 1 July 2004
|
||
- Continuing Eric and Daniel's vanquishing of "using" directives from
|
||
header files. Instances of string or vector in header files were changed
|
||
to std::string and std::vector respectively.
|
||
|
||
client/
|
||
gui_rpc_client.h
|
||
|
||
Rom 1 July 2004
|
||
- Introduce skeleton of new transitioner queue class that uses a specialized
|
||
query for its job. NOTE: I don't know if it will even compile, but need another
|
||
set of eyes looking over it as well.
|
||
|
||
db/
|
||
db_base.C, .h
|
||
boinc_db.C, .h
|
||
|
||
Daniel 2004-07-01
|
||
- client: scheduler now only calls set_client_state_dirty if some
|
||
task was started or stopped (i.e. set of running tasks changed).
|
||
Also, don't try to schedule CPUs if there are no projects or
|
||
no results.
|
||
|
||
client/
|
||
cs_apps.C
|
||
|
||
Daniel 2004-07-01
|
||
- Yet more fixes related to recent "using" directive checkins...
|
||
|
||
client/
|
||
app.C
|
||
cs_scheduler.C
|
||
gui_rpc_client.C
|
||
hostinfo_unix.C
|
||
win/
|
||
wingui_mainwindow.cpp
|
||
|
||
David 1 July 2004
|
||
- trickle message support:
|
||
- core client: send <have_trickle_down> message to app when appropriate
|
||
- boinc_api: implement boinc_receive_trickle_down()
|
||
- blind attempt to fix HTTP auth crash:
|
||
check for empty URL on redirect
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
app.C,h
|
||
cs_trickle.C
|
||
hostinfo_unix.C
|
||
http.C
|
||
lib/
|
||
app_ipc.h
|
||
error_numbers.h
|
||
|
||
Karl 2004-07-02
|
||
- compile fixes
|
||
|
||
db/
|
||
boinc_db.C
|
||
|
||
sched/
|
||
transitioner.C
|
||
|
||
Daniel 2004-07-02
|
||
- fixed bug that caused CPU scheduler to decrease debts of
|
||
projects that didn't have results running.
|
||
- also undid 2004-07-01 change that only dirtied state file when
|
||
apps were started or preempted. Need to dirty state file
|
||
every time the scheduler recomputes debts.
|
||
|
||
client/
|
||
cs_apps.C
|
||
|
||
David 2 July 2004
|
||
- Changed the way result templates are stored with workunits.
|
||
Instead of storing them as blobs,
|
||
store a filename relative to project root dir.
|
||
This is to speed up DB.
|
||
- disable web command to update host credit
|
||
- turn off web commands to show results for host/user, and pending credit
|
||
- pruned command-line options from create_work.
|
||
You now have to run it in project root dir,
|
||
and it gets info from config file.
|
||
|
||
Project note: this will require either
|
||
1) dropping your workunit and result tables or
|
||
2) modifying your workunit table (see ops/db_update.php)
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
schema.sql
|
||
html/
|
||
inc/
|
||
host.inc
|
||
ops/
|
||
db_update.php
|
||
user/
|
||
pending.php
|
||
results.php
|
||
sched/
|
||
feeder.C
|
||
transitioner.C
|
||
tools/
|
||
backend_lib.C,h
|
||
create_work.C
|
||
process_result_template.C
|
||
|
||
Daniel 2004-07-02
|
||
- API: provide is_worker (default to true) parameter to boinc_init
|
||
and boinc_finish.
|
||
- Applications for which is_worker=false CANNOT access shared
|
||
memory segment that is used for status updates. But they
|
||
can still use BOINC graphics API.
|
||
- API: deleted standalone parameter to boinc_init. standalone
|
||
status is already detected in boinc_init automatically. It
|
||
should be sufficient for testing purposes.
|
||
- FORTRAN API also changed.
|
||
- Documentation updated to reflect API changes.
|
||
|
||
api/
|
||
boinc_api.C
|
||
boinc_api.h
|
||
boinc_api_fortran.C
|
||
doc/
|
||
api.php
|
||
compound_app.php
|
||
|
||
David 2 July 2004
|
||
- added new classes DB_RESULT_DONE, DB_WORK_ITEM, DB_ACCOUNT_INFO
|
||
for efficient DB access
|
||
- feeder: don't need to check server state because scheduler also checks
|
||
- sched_config.parse(): if db host is current host, substitute "localhost"
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
sched/
|
||
feeder.C
|
||
sched_config.C
|
||
tools/
|
||
create_work.C
|
||
|
||
David 3 July 2004
|
||
- Changed feeder to use DB_WORK_ITEM for database fetch.
|
||
This gets a stream of (result ID, WU) pairs
|
||
instead of getting a stream of results and then
|
||
fetching the WUs separately (avoid all those round-trips to DB)
|
||
|
||
sched/
|
||
feeder.C
|
||
db/
|
||
boinc_db.C,h
|
||
|
||
David 3 July 2004
|
||
- tweak DB_WORK_ITEM for performance:
|
||
use mysql_use_result() instead of mysql_store_result();
|
||
use high_priority
|
||
Feeder is performing well now, except that there are
|
||
long gaps when waiting for query to start returning
|
||
- Increase delay request to 1 hour when no work, bad auth etc.
|
||
- turn off showing results for host
|
||
TODO: parameterize web site feature flags
|
||
|
||
db/
|
||
boinc_db.C
|
||
html/inc/
|
||
host.inc
|
||
sched/
|
||
handle_request.C
|
||
sched_send.C
|
||
|
||
Daniel 2004-07-03
|
||
- API: boinc_init now only checks for lockfile if called by worker
|
||
applications. This way, we can have many non-worker apps in
|
||
addition to one worker app.
|
||
|
||
api/
|
||
boinc_api.C
|
||
|
||
Rom 3 July 2004
|
||
- Introduce basic transaction support for performance DB class.
|
||
- Implement basic transsction support for the transitioner.
|
||
|
||
db/
|
||
boinc_db.C
|
||
db_base.C, .h
|
||
sched/
|
||
transitioner.C
|
||
|
||
Rom 3 July 2004
|
||
- Plug a memory leak in the transitioner
|
||
|
||
db/
|
||
boinc_db.C
|
||
|
||
David 4 July 2004
|
||
- scheduler: if client is requesting work,
|
||
and client is not returning results,
|
||
and there's no work,
|
||
then send "No work available" message
|
||
and return without opening DB
|
||
- scheduler: if client has wrong major version,
|
||
and is not returning results,
|
||
return without opening DB
|
||
|
||
sched/
|
||
handle_request.C
|
||
main.C
|
||
sched_shmem.C,h
|
||
|
||
David 6 July 2004
|
||
- Completed (more or less) the implementation of trickle messages.
|
||
Some changes:
|
||
- Trickle-up messages now have a "variety",
|
||
specified by the application.
|
||
Typically it's the name of the application.
|
||
The trickle-up handler (on the server side) specifies what
|
||
variety of message it wants to handle.
|
||
- boinc_receive_trickle_down() no longer returns the message itself;
|
||
instead, it returns the name of the file.
|
||
The app must open, read and delete the file.
|
||
|
||
NOTE: the structure of the msg_to_host and msg_from_host tables
|
||
is changed. Projects will want to drop and recreate these.
|
||
|
||
api/
|
||
boinc_api.C,h
|
||
client/
|
||
app.C
|
||
cs_scheduler.C
|
||
cs_trickle.C
|
||
scheduler_op.C,h
|
||
db/
|
||
boinc_db.C,h
|
||
schema.sql
|
||
lib/
|
||
diagnostics.h
|
||
filesys.C
|
||
sched/
|
||
handle_request.C
|
||
server_types.C,h
|
||
trickle_handler.C
|
||
|
||
Brian 6 July 2004
|
||
- Changed client so that when a file info is compared to
|
||
an existing file info with the same name, the differences
|
||
in whether it is an upload or download are updated and
|
||
any urls that are not present in the file info are added to the url list.
|
||
- When a url is requested for a file info, the file info
|
||
checks whether it is an upload, and then looks for the
|
||
substring "file_upload_handler" any url it is trying to
|
||
use to upload the file. The opposite is true for downloads.
|
||
|
||
- Changed get_url into three separate functions:
|
||
get_current_url(bool), returns the current good url
|
||
get_init_url(bool), returns the initial good url and sets the start url
|
||
get_next_url(book), increments current_url and finds the next good url
|
||
|
||
- Changed client so that a file_info will save its signed xml
|
||
even if it doesn't include have xml signature.
|
||
|
||
- Updated the client so that the check to see if the url is
|
||
valid for the type of network request is a private function of FILE_INFO
|
||
|
||
- Modified the backoff_retry function in persistant_file_xfers
|
||
so that it uses the updated get_url that checks if the url
|
||
is correct for the type of transfer. Otherwise it could
|
||
increment the current_url index to point to an invalid url
|
||
|
||
- If a file_info doesn't have a max number of bytes and a new
|
||
file_info with the same name does, update the max number
|
||
of bytes of the existing file_info and add the <max_nbytes> to the signed_xml.
|
||
|
||
- when file_xfer is complete, the client checks if the file
|
||
was meant to be uploaded when present OR generated locally
|
||
before setting it to ready to report, instead of only the later
|
||
|
||
- With the addition of multiple urls, the issue of sending urls
|
||
that didn't communicate well or got garbage. Whenever a file
|
||
get's a server error, it calls, check_giveup, which only gives
|
||
up on the file if there are no more urls to try. Also is called
|
||
if the downloaded file is garbage or has the same name but not the
|
||
correct size.
|
||
|
||
- added functionality for send_file_list but does not do anything yet
|
||
|
||
|
||
client/
|
||
client_types.C,h
|
||
client_state.h
|
||
cs_apps.C
|
||
cs_file.C
|
||
cs_scheduler.C
|
||
file_xfer.C
|
||
pers_file_xfer.C,h
|
||
scheduler_op.C,h
|
||
|
||
Daniel 2004-07-06
|
||
- client: when a project fails to attach, call quit_activities()
|
||
before exit(1) so other running apps will terminate.
|
||
|
||
client/
|
||
main.C
|
||
|
||
Rom 6 July 2004
|
||
- Removed ';' from queries that had them since the API Docs state
|
||
not to put them in the query.
|
||
- Implement a scheduler optimization so we do one batched read and one
|
||
transactional write. In the worst case scenario where the client
|
||
had submitted 20 results we would do 41 reads and 40 writes
|
||
just to update the results.
|
||
Now we batch read all the results at one time and surround
|
||
the write requests within a transaction.
|
||
So now our worst case scenario is 2 reads and 40 writes within a
|
||
transaction.
|
||
|
||
db/
|
||
boinc_db.C, .h
|
||
db_base.C
|
||
sched/
|
||
handle_request.C
|
||
|
||
Daniel 2004-07-06
|
||
- CPU scheduler only considers resource shares for projects that have
|
||
a runnable result.
|
||
- Bound debt to [-1 day * ncpus, 1 day * ncpus]
|
||
- deleted some dead code
|
||
|
||
client/
|
||
app.C
|
||
cs_apps.C
|
||
cs_trickle.C
|
||
|
||
Daniel 2004-07-06
|
||
- client: work requests now include <resource_share_fraction> tag.
|
||
- scheduler: support for resource_share_fraction
|
||
when checking for wu feasibility, consider resource share of
|
||
project to determine estimated wallclock duration
|
||
- scheduler: syntax bug fix in validator
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
sched/
|
||
sched_send.C
|
||
server_types.C
|
||
server_types.h
|
||
validate.C
|
||
|
||
Daniel 2004-07-06
|
||
- client: bugfix in make_scheduler_request
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
|
||
Daniel 2004-07-06
|
||
- uh, messed up doing a commit. but i put the "correct" files
|
||
back. sorry.
|
||
|
||
client/
|
||
app.C
|
||
client_state.h
|
||
cs_prefs.C
|
||
scheduler_op.C
|
||
|
||
Rom 6 July 2004
|
||
- Added event handler so we are notified of a system shutdown/logoff which
|
||
will allow us to shutdown gacefully instead of the OS terminating us.
|
||
- Do a little clean up work with the resource files in the hope that
|
||
visual studio won't remove the win_config.h reference the next time the
|
||
resources are modified.
|
||
|
||
client/win/
|
||
boinc_cli.rc
|
||
boinc_dll.rc
|
||
boinc_gui.rc
|
||
boinc_ss.rc
|
||
wingui_mainwindow.cpp, .h
|
||
|
||
Rom 6 July 2004
|
||
- Reduce the total number of messages the system attempts to keep in the
|
||
messages tab to 200. 2000 was a bit much and caused the system to spend
|
||
some time processing when there were quite a few messages to go through,
|
||
such as in Predictor@home
|
||
- Moved the code that checkes the total number of messages available in
|
||
the message tab out of the switch/case chunk of code so that it happens
|
||
more frequently than when the user clicks on the messages tab, which
|
||
could take awhile if there was more than 1000 messages.
|
||
|
||
client/win/
|
||
wingui_mainwindow.cpp, .h
|
||
|
||
Rom 7 July 2004
|
||
- Adjust the console control handler such that when a logoff event has
|
||
occurred check to see if we are running as a service and if so, ignore
|
||
the event, otherwise quit.
|
||
|
||
Thanks to Fernando Vinan-Cano via John McLeod
|
||
|
||
client/
|
||
main.C
|
||
|
||
Daniel 2004-07-07
|
||
- client: set the result exit_code to a non-zero value when:
|
||
1. the result couldn't start
|
||
2. the result had a download error
|
||
3. the result had an upload error
|
||
(unless the exit_code was already non-zero)
|
||
|
||
This should get the validator to mark these results as invalid
|
||
and solve the problem the predictor@home people reported.
|
||
|
||
client/
|
||
client_state.C
|
||
lib/
|
||
error_numbers.h
|
||
|
||
|
||
David 7 July 2004
|
||
- Implement revised core/app interface
|
||
(see boinc/doc/api_v4.php).
|
||
- Augment the set of shared-memory message channels;
|
||
add a channel for suspend/resume/quit messages
|
||
(these replace the use of signals and SuspendThread calls);
|
||
add separate channels for trickle up/down
|
||
- Modify the API library accordingly.
|
||
Currently works for Windows; will do UNIX later
|
||
- Modify the core client (app.C) accordingly
|
||
- Call ACTIVE_TASK_SET::poll() even when activities suspended;
|
||
still need to send heartbeats.
|
||
- added MSG_CHANNEL class to make code better organized
|
||
|
||
api/
|
||
boinc_api.C
|
||
windows_opengl.C
|
||
client/
|
||
app.C,h
|
||
client_state.C
|
||
lib/
|
||
app_ipc.C,h
|
||
|
||
Daniel 2004-07-08
|
||
- NetBSD compile fixes from John Klos <john@ziaspace.com>
|
||
(just added __NetBSD__ wherever __OpenBSD__ appeared)
|
||
|
||
lib/
|
||
filesys.C
|
||
util.C
|
||
|
||
David 8 July 2004
|
||
- got the new core/app interface working on Unix.
|
||
I looked into implementing the management functions
|
||
using a thread (with pthreads).
|
||
But the pthreads interface is kinda bizarre.
|
||
E.g. you can't suspend another thread.
|
||
You can send it a signal - but the signal handler
|
||
is not allowed to make any pthreads calls! WTF???
|
||
- Added suspend/resume GUI RPCs;
|
||
changed gui_test to take a cmdline arg: -state -suspend -resume
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
app.C
|
||
gui_rpc_client.C,h
|
||
gui_rpc_server.C
|
||
gui_test.C
|
||
|
||
David 8 July 2004
|
||
- Change the ind_res_st index (on result) from
|
||
(server_state, random) to just (server_state).
|
||
This makes the feeder's DB query somewhat faster (I think).
|
||
The price we pay is that results from the same WU may
|
||
be sent out close together in time.
|
||
- make download page cached
|
||
|
||
NOTE TO PROJECTS:
|
||
this requires an update to your database.
|
||
See html/ops/db_update.php
|
||
|
||
db/
|
||
boinc_db.C
|
||
constraints.sql
|
||
html/
|
||
ops/
|
||
db_update.php
|
||
index.php
|
||
user/
|
||
download.php
|
||
|
||
Daniel 2004-07-08
|
||
- Changed OpenBSD- and NetBSD-specific #ifdef's to be determined
|
||
by autoconf. No idea if this works on OpenBSD/NetBSD yet.
|
||
|
||
Makefile.in
|
||
aclocal.m4
|
||
config.h.in
|
||
configure
|
||
configure.ac
|
||
lib/
|
||
filesys.C
|
||
util.C
|
||
*/
|
||
Makefile.in
|
||
|
||
Brian 8 July 2004
|
||
- Fixed a small bug in allowed_disk_usage where the
|
||
global_prefs.disk_max_used_pct was directly multiplied
|
||
by the total disk, creating a disk value that was a factor of 100 off,
|
||
effectively never becoming the min value returned by the function.
|
||
|
||
client/
|
||
cs_prefs.C
|
||
|
||
Karl 2004-07-08
|
||
- fixes for boinc_thread_cpu_time vs. boinc_calling_thread_cpu_time
|
||
|
||
lib/
|
||
util.h
|
||
api/
|
||
boinc_api.h
|
||
boinc_api_fortran.C
|
||
client/
|
||
dhrystone.C
|
||
whetstone.C
|
||
|
||
Karl 2004-07-09
|
||
- fixed CURSOR initialization problem (found by Carl Christensen)
|
||
- CURSOR now initializes itself; classes that use it don't need to
|
||
initialize it anymore
|
||
|
||
- removed superfluous 'CURSOR cursor' in DB_WORK_ITEM -- is this correct?
|
||
- if there should be two cursors, they should be named differently --
|
||
otherwise it is way too easy to use the wrong one in multiple
|
||
inheritance
|
||
|
||
db/
|
||
boinc_db.h
|
||
boinc_db.C
|
||
db_base.h
|
||
db_base.C
|
||
|
||
Karl 2004-07-09
|
||
- graphics API updates
|
||
|
||
- fixed potential buffer overflows
|
||
|
||
api/
|
||
static_graphics.C
|
||
gutil.C
|
||
gutil.h
|
||
|
||
Daniel 2004-07-09
|
||
- Don't send heartbeats to, send trickle downs to, or get status
|
||
messages from apps without shared memory initialized (i.e.
|
||
PROCESS_UNINITIALIZED)
|
||
|
||
client/
|
||
app.C
|
||
|
||
David 9 July 2004
|
||
- Implemented GUI RPCs for
|
||
- showing graphics (one result or all, window or fullscreen)
|
||
- project reset, attach, detach
|
||
- Added cmdline options to gui_test to exercise the above
|
||
|
||
client/
|
||
gui_rpc_client.C,h
|
||
gui_rpc_server.C
|
||
gui_test.C
|
||
|
||
Brian 9 July 2004
|
||
- Changed server side conception of gigabyte to match client side.
|
||
- (1024.*1024.*1024.) instead of 1e9
|
||
- makes sure that project will get work if there is space on client
|
||
|
||
sched/
|
||
sched_send.C
|
||
|
||
Jeff 9 July 2004
|
||
- create_work() now take a new parameter - the path to the result template
|
||
file. This was needed because some programs (eg the sah splitter) are
|
||
not run from the project root directory.
|
||
|
||
tools/
|
||
backend_lib.C
|
||
backend_lib.h
|
||
create_work.C
|
||
|
||
David 9 July 2004
|
||
- Integrate code (courtesy of James Drews) that lets you limit
|
||
the set of hosts from which the core client will accept GUI RPCs.
|
||
Here's how it works: make a file "remote_hosts"
|
||
in the BOINC directory with a list of hostnames (# for comment).
|
||
The core client will accept connections only from
|
||
localhost and from hosts in this list.
|
||
Note: if the -allow_remote_gui_rpc option is given,
|
||
ALL connections are accepted.
|
||
- add a "-host x" cmdline arg to gui_test
|
||
- add error checking to GUI_RPC_CLIENT so that it can tell
|
||
if its connection was rejected
|
||
- remove .gz target from client makefile
|
||
|
||
client/
|
||
Makefile.am
|
||
file_names.h
|
||
gui_rpc_client.C,h
|
||
gui_rpc_server.C,h
|
||
gui_test.C
|
||
tools/
|
||
create_work.C
|
||
|
||
David 11 July 2004
|
||
- changes in core client related to attaching to projects
|
||
- commented out "maybe_rename_old_filename_format()" stuff.
|
||
Not needed, and contains hazardous asserts
|
||
- CLIENT_STATE::add_project()
|
||
- check that master URL starts with http://,
|
||
and has other chars after that
|
||
[WHY WASN'T THIS BEING DONE??]
|
||
- check that authenticator is non-null
|
||
|
||
client/
|
||
cs_account.C
|
||
win/
|
||
wingui_dialog.cpp
|
||
lib/
|
||
error_numbers.h
|
||
util.C,h
|
||
|
||
Rom 11 July 2004
|
||
- Checkin the document class stuff for the new GUI, right now the
|
||
SendMessageToCore function is hard coded to do a <get_state/> message
|
||
until I get around to figuring out why the compiler complains about
|
||
an attempt to cast to a void *.
|
||
NOTE: Still debugging the UI portion of the code, it'll follow shortly
|
||
|
||
clientgui/
|
||
ActiveTask.cpp, .h
|
||
App.cpp, .h
|
||
AppVersion.cpp, .h
|
||
BOINCGUI.vcproj
|
||
FileInfo.cpp, .h
|
||
MainDocument.cpp, .h
|
||
Message.cpp, .h
|
||
Project.cpp, .h
|
||
ProxyInfo.cpp, .h
|
||
Result.cpp, .h
|
||
stdwx.h
|
||
Workunit.cpp, .h
|
||
XMLParser.cpp, .h
|
||
|
||
Daniel 2004-07-12
|
||
- bugfix: don't tell uninitalized apps to reread prefs
|
||
- only call set_client_state_dirty("schedule_cpus") if some
|
||
project had a runnable result. (if no such project, then debt
|
||
and active task set can't change.)
|
||
- tell apps to stop doing screensaver graphics when rescheduling
|
||
CPUs
|
||
- added ACTIVE_TASK_SET::get_next_graphics_capable_app(), not
|
||
currently used
|
||
|
||
client/
|
||
app.{C,h}
|
||
cs_apps.C
|
||
|
||
Rom 12 July 2004
|
||
- Checkin two workable tabs for the new GUI, Project and Work, performance
|
||
isn't quite up to par yet. My client_state.xml file is roughly 256kb and
|
||
it takes the new gui almost a minute to parse the RPC from the core client.
|
||
|
||
NOTE: The Work tab is hooked up but the I still need to massage the data
|
||
document-side to see things the same way as the existing GUI.
|
||
|
||
clientgui/
|
||
BaseListCtrlView.cpp, .h
|
||
BOINCGUI.vcproj
|
||
MainDocument.cpp, .h
|
||
MainFrame.cpp, .h
|
||
MessagesView.cpp, .h
|
||
Project.cpp
|
||
ProjectsView.cpp, .h
|
||
ResourceUtilizationView.cpp, .h
|
||
TransfersView.cpp, .h
|
||
WorkView.cpp, .h
|
||
XMLParser.cpp
|
||
|
||
Karl 2004-07-13
|
||
- fixed configure bug where MINOR_VERSION gets set to nothing if minor
|
||
version is 0
|
||
|
||
- changed MAJOR_VERSION, MINOR_VERSION to BOINC_MAJOR_VERSION,
|
||
BOINC_MINOR_VERSION; PACKAGE_VERSION and VERSION -> BOINC_VERSION_STRING
|
||
|
||
- added '--disable-client' option to disable building client
|
||
|
||
- fixed Makefile typo for message_handler
|
||
|
||
- fixed Makefile problem with @CLIENT_BIN_FILENAME@.gz
|
||
|
||
- misc configure fixes
|
||
|
||
configure.ac
|
||
Makefile.am
|
||
|
||
client/
|
||
Makefile.am
|
||
client_state.C
|
||
cs_cmdline.C
|
||
cs_statefile.C
|
||
file_xfer.C
|
||
version.C (removed -- obsolete)
|
||
version.h (removed -- obsolete)
|
||
client/win/
|
||
boinc_cli.rc
|
||
boinc_dll.rc
|
||
boinc_gui.rc
|
||
boinc_ss.rc
|
||
wingui_dialog.cpp
|
||
win_config.h [regenerated]
|
||
|
||
py/Boinc/
|
||
version.py.in
|
||
|
||
sched/
|
||
Makefile.am
|
||
file_upload_handler.C
|
||
handle_request.C
|
||
sched_shmem.C
|
||
|
||
test/
|
||
testbase.py
|
||
|
||
configure [regenerated]
|
||
*/Makefile.in [regenerated]
|
||
|
||
Karl 2004-07-13
|
||
|
||
- new function generic_check_set() which generalizes
|
||
generic_check_set_majority()
|
||
|
||
- Cleaned up sample validators and sample assimilator. Renames:
|
||
validate_test -> sample_bitwise_validator
|
||
validate_trivial -> sample_trivial_validator
|
||
assimilator -> sample_dummy_assimilator
|
||
|
||
- sample_bitwise_validator: more efficient: compare (lazily-computed)
|
||
md5sums before comparing file contents
|
||
|
||
- md5_file: md5_string(): new C++ version of md5_block; fixed constness
|
||
in md5_block, md5_file parameters
|
||
|
||
sched/
|
||
Makefile.am
|
||
validate_util.C
|
||
validate_util.h
|
||
validate.C -> validator.C (consistent w/ assimilator.C)
|
||
validate_test.C -> sample_bitwise_validator.C
|
||
validate_trivial.C -> sample_trivial_validator.C
|
||
assimilate_handler.C -> sample_dummy_assimilator.C
|
||
|
||
lib/
|
||
md5_file.h
|
||
md5_file.C
|
||
|
||
Karl 2004-07-13
|
||
- updated #includes of C headers in C++ files to C++ headers
|
||
(e.g. <cstdio> instead of <stdio.h>)
|
||
|
||
- refactored HAVE_GL* preprocessing logic for OpenGL headers
|
||
|
||
api/
|
||
boinc_gl.h (new)
|
||
|
||
113 files modified
|
||
|
||
David 12 July 2004
|
||
- client: get env vars related to HTTP proxy authentication
|
||
(previously the cmdline version couldn't do auth)
|
||
|
||
client/
|
||
cs_cmdline.C
|
||
|
||
David 13 July 2004
|
||
- revised GUI RPC interface.
|
||
old: get_state() returns everything
|
||
problem: too slow to do every second
|
||
new: get_state() returns stuff that doesn't change often
|
||
(PROJECT, APP, APP_VERSION, WORKUNIT, RESULT)
|
||
get_results() returns dynamic info about results
|
||
(fast enough to do every second)
|
||
get_file_transfers() returns info about file transfers
|
||
(fast enough to do every second)
|
||
If either of the latter returns the name of something
|
||
that doesn't exist in the static state,
|
||
then do another get_state() call
|
||
|
||
client/
|
||
client_state.h
|
||
client_types.C,h
|
||
cs_statefile.C
|
||
gui_rpc_client.C,h
|
||
gui_rpc_server.C
|
||
gui_test.C
|
||
|
||
Daniel 2004-07-14
|
||
- schedule_cpus() now returns false if no projects had runnable
|
||
results. this should behave more nicely with do_something().
|
||
|
||
client/
|
||
cs_apps.C
|
||
|
||
Daniel 2004-07-14
|
||
- implemented new work fetch policy, as described in client_sched.php
|
||
- compile fixes in client_types.h to get rid of warnings (there was
|
||
some confusing of struct and class)
|
||
- changed <cstdio> back to <stdio.h> in std_fixes.h; this fixes
|
||
configure and compile problems with seti_boinc
|
||
- added some auxiliary code for new screensaver logic; actual
|
||
screensaver logic not yet changed (coming soon...)
|
||
|
||
client/
|
||
app.C,h
|
||
client_state.C,h
|
||
client_types.h
|
||
cs_apps.C
|
||
cs_scheduler.C
|
||
scheduler_op.C
|
||
lib/
|
||
std_fixes.h
|
||
|
||
Brian 14 July 2004
|
||
- made a small changed that removed extra checks on downloaded files
|
||
when a file_xfer is completed. Was rejecting good files that had
|
||
bogus md5 checksums created using send_file or get_file. Extra time
|
||
will have to be spend to make md5 work for these two functions in the
|
||
future
|
||
|
||
client/
|
||
pers_file_xfer.C
|
||
|
||
Rom July 15 2004
|
||
- Tag for 4.00 release, all platforms
|
||
boinc_release_4_00
|
||
|
||
David 15 July 2004
|
||
- server: better messages on DB errors
|
||
- web: cache system looks for "format=xml" in cache args,
|
||
sends as MIME type XML if so
|
||
- added CGI interface to get user stats as XML
|
||
- top_*.php: forgot to exit() in case of too-large offset
|
||
- xml_escape(): change \n to space
|
||
- db_dump: error checking; add fields to team output;
|
||
only output items with nonzero total_credit
|
||
- scheduler: we were doing an optimization of not opening the DB
|
||
in case there's no work and client not returning results.
|
||
Don't do this if this is initial request from host
|
||
(otherwise it won't get hostid, and will detach project)
|
||
- add "enforce_delay_bound" to SCHED_CONFIG
|
||
(NOTE TO PROJECTS: unless you pub <enforce_delay_bound/>
|
||
in your config.xml, the scheduler will send results
|
||
to hosts that are too slow to complete them within delay bound.)
|
||
|
||
db/
|
||
db_base.C
|
||
html/
|
||
inc/
|
||
cache.inc
|
||
user/
|
||
account_created.php
|
||
download.php
|
||
show_user.php
|
||
top_*.php
|
||
lib/
|
||
parse.C,h
|
||
sched/
|
||
db_dump.C
|
||
handle_request.C
|
||
sched_config.C,h
|
||
|
||
Noaa 15 July 2004
|
||
- completely new copy of x_opengl utilizing glut, updated using Karl's
|
||
boinc_gl.h. Include-file issues including makefile issues have yet to
|
||
be resolved so this will NOT compile with your existing Makefile
|
||
- updated graphics_api with xwin_graphics_event_loop and some new
|
||
included files. Will not compile with existing Makefile.
|
||
- reduce.C rearranged includes and added GL, to be resolved later.
|
||
- gutil.C extern "C" for jpeglib, glut included, will not compile
|
||
with existing Makefile
|
||
- boinc_api.h RETSIGTYPE changed to void
|
||
|
||
New makefile to take all of these into account will be committed when
|
||
available.
|
||
|
||
api/
|
||
x_opengl.C
|
||
x_opengl.h
|
||
graphics_api.C
|
||
reduce.C
|
||
boinc_api.h
|
||
gutil.C
|
||
|
||
|
||
David 15 July 2004
|
||
- HTTP; increase size of request header buffer from 256 to 4096
|
||
(fixes HTTP proxy authentication crash bug)
|
||
- New way of updating client_state.xml:
|
||
- write new file to client_state_next.xml
|
||
- rename client_state.xml to client_state_prev.xml
|
||
- rename client_state_next.xml to client_state.xml
|
||
- remove references to version.* from project file
|
||
|
||
client/
|
||
cs_statefile.C
|
||
file_names.h
|
||
http.h
|
||
win_build/
|
||
boinc_gui.vcproj
|
||
|
||
Noaa 15 July 2004
|
||
|
||
-added printout of usabilities in gui_test.C (ie when user types
|
||
"gui_test" with no arguments)
|
||
|
||
client/
|
||
gui_test.C
|
||
|
||
Daniel 2004-07-15
|
||
- API: made APP_INIT_DATA aid extern so apps can access it (used to set
|
||
fraction_done_start and fraction_done_end)
|
||
|
||
api/
|
||
boinc_api.C,h
|
||
|
||
David 16 July 2004
|
||
- on team listings, show only users w/ nonzero total credit
|
||
- xml_escape(): convert ^M and \r to blank as well as \n
|
||
|
||
html/inc/
|
||
team.inc
|
||
lib/
|
||
parse.C
|
||
sched/
|
||
db_dump.C
|
||
|
||
Daniel 2004-07-16
|
||
- API: fixes in GL code to use APP_INIT_DATA aid from boinc_api.C
|
||
|
||
api/
|
||
x_opengl.C
|
||
windows_opengl.C
|
||
|
||
David 16 July 2004
|
||
- fixed bug in transitioner where, when creating new results
|
||
for a WU, it uses the wrong suffix,
|
||
causing conflicts with existing result names.
|
||
- fixed bug in writing statefile; wouldn't work on fresh installs
|
||
|
||
client/
|
||
cs_statefile.C
|
||
sched/
|
||
transitioner.C
|
||
|
||
David 17 July 2004
|
||
Various changes to reflect the fact that message-passing
|
||
operations may fail because buffer is full,
|
||
in which case they must be retried later.
|
||
|
||
- in graphics API: don't ack graphics mode in set_mode();
|
||
instead, ack it in timer_handler()
|
||
- in core client: keep track of the graphics_mode_requested
|
||
separately from the graphics_mode_sent;
|
||
in a polling routine, if these are different then try to send.
|
||
|
||
- used CLIENT_STATE::get_next_graphics_capable_app() instead of
|
||
ACTIVE_TASK_SET::get_graphics_capable_app()
|
||
|
||
api/
|
||
windows_opengl.C
|
||
client/
|
||
app.C,h
|
||
cs_apps.C
|
||
ss_logic.C
|
||
|
||
David 19 July 2004
|
||
- windows_opengl.
|
||
- on WM_CLOSE message, call set_mode() rather than KillWindow().
|
||
If you call KillWindow() the core client never finds out
|
||
that we're in HIDE_GRAPHICS mode
|
||
- removed specious KillWindow() logic from make_new_window();
|
||
- Various changes and bug fixes for GUI RPC:
|
||
- include resource share in PROJECT write
|
||
- include wu_name etc. in RESULT write
|
||
- expanded gui_test.C to include almost all RPCs
|
||
|
||
api/
|
||
windows_opengl.C
|
||
client/
|
||
client_types.C,h
|
||
cs_statefile.C
|
||
gui_rpc_client.C,h
|
||
gui_rpc_server.C
|
||
gui_test.C
|
||
|
||
Daniel 2004-07-19
|
||
- client: try to choose new app to do screensaver graphics in
|
||
schedule_cpus()
|
||
|
||
client/
|
||
cs_apps.C
|
||
ss_logic.C,h
|
||
|
||
David 19 July 2004
|
||
- fix various bugs that kept test_uc.py from working
|
||
Project._build_sched_commandlines(): programs names have changed
|
||
(validate_test -> sample_bitwise_validator,
|
||
assimilator -> sample_dummy_assimilator)
|
||
??? why does this function exist in the first place?
|
||
TestProject.run(): same
|
||
Work.install():
|
||
need to copy result template file to project directory
|
||
Added -config_dir argument to create_work
|
||
For some reason, the transitioner wasn't expanding UPLOAD_URL
|
||
in result templates, when creating new results.
|
||
Fixes this.
|
||
|
||
In spite of all this, test_uc.py doesn't quite work.
|
||
I think sample_bitwise_validator is crashing.
|
||
|
||
py/Boinc/
|
||
setup_project.py
|
||
sched/
|
||
transitioner.C
|
||
test/
|
||
testbase.py
|
||
tools/
|
||
create_work.C
|
||
|
||
Karl 2004-07-20
|
||
- fixed bug in md5_string() that caused sample_bitwise_validator to
|
||
segfault.
|
||
- test_uc.py passes again.
|
||
|
||
lib/
|
||
md5_file.C
|
||
|
||
Rom 19 July 2004
|
||
- Increase the heartbeat give-up period from 5 seconds, to 30 seconds.
|
||
It looks as though we were hitting the give-up period when name resolution
|
||
was taking longer than expected.
|
||
- Increase the heartbeat timeout period to be greater than the timeout period.
|
||
|
||
api/
|
||
boinc_api.C
|
||
|
||
Rom July 19 2004
|
||
- Tag for 4.01 release, all platforms
|
||
boinc_release_4_01
|
||
|
||
Eric K. July 20 2004
|
||
- Added cache control headers to the cached php pages to reduce CGI
|
||
load on the web server. The headers include Last-Modified, Expires,
|
||
and Cache-Control: public, max-age=. Expiration and max-age are
|
||
based upon the max-age parameter passed to start_cache().
|
||
start_cache() also check the request header for 'If-Modified-Since'
|
||
and returns a 'HTTP/1.0 304 Not Modified' if 'If-Modified-Since' ==
|
||
'Last-Modified:'
|
||
|
||
html/inc/cache.inc
|
||
|
||
Rom July 19 2004
|
||
- Fix a bug where during the benchmarking process all the active tasks
|
||
would die off.
|
||
|
||
client/
|
||
cs_benchmark.C
|
||
|
||
Karl 2004-07-21
|
||
- fix bug in "couldn't find app" messages
|
||
|
||
sched/
|
||
message_handler.C
|
||
validator.C
|
||
|
||
Karl 2004-07-21
|
||
- allow '.msi' as extension for installation package
|
||
|
||
tools/
|
||
update_versions
|
||
|
||
Karl 2004-07-22
|
||
- fixed html/php bugs (e.g. should be <?php instead of <?)
|
||
- fixed forum link
|
||
- multipart/form-data doesn't seem to work (?)
|
||
- don't show profile thumbnail if none exists
|
||
- fix installation of head_20.png
|
||
|
||
html/user/
|
||
sample_index.php
|
||
team_manage.php
|
||
html.php
|
||
old_news.php
|
||
html/inc
|
||
profile.inc
|
||
uotd.inc
|
||
project.sample/
|
||
project_news.inc
|
||
py/Boinc/
|
||
setup_project.py
|
||
|
||
David 21 July 2004
|
||
- Database optimization in the transitioner:
|
||
add several results in a single SQL insert statement
|
||
(using values (...),(...),(...))
|
||
instead of separate inserts.
|
||
This is enabled by a BATCH_INSERT compile flag in transitioner.C
|
||
- Add a USE_TRANSACTIONS flag to transitioner.
|
||
Leave it off for now.
|
||
- For some reason we weren't processing the UPLOAD_URL symbol
|
||
in result templates.
|
||
Restore this, using the info in the config file.
|
||
- transitioner: if anything fails (result creation, WU update), quit.
|
||
- result.random must be initialized by caller on insert
|
||
(not too relevant since we don't use it anymore)
|
||
- start/commit_transaction are now members of DB_CONN
|
||
rather than DB_BASE_SPECIAL
|
||
- scheduler: in scan_work_array, do all "cheap" checks
|
||
(i.e. those that don't require DB access)
|
||
before releasing the semaphore.
|
||
Thus if all the results are infeasible,
|
||
we'll acquire/release the semaphore once, not 100 times.
|
||
- re-enable team name search
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
db_base.C,h
|
||
html/user/
|
||
team.php
|
||
team_lookup.php
|
||
sched/
|
||
sched_send.C
|
||
transitioner.C
|
||
tools/
|
||
backend_lib.C,h
|
||
|
||
|
||
Noaa 21 July 2004
|
||
- incorporated modded, smaller glut into the source tree, includes
|
||
a makefile if any files are changed
|
||
- updated, cleaner version of x_opengl.C
|
||
- removed glut stuff from boinc_gl.h to account for integrated glut in
|
||
source tree
|
||
- updated gutil.C header
|
||
- changed Makefile for api to account for glut in source tree, called
|
||
Makefile.graphics (unaffected by configure, may not run on every
|
||
system correctly, please check for specific setups)
|
||
boincglut/ (new)
|
||
api/
|
||
x_opengl.C
|
||
boinc_gl.h
|
||
gutil.C
|
||
Makefile.graphics (new)
|
||
|
||
boincglut/ (new)
|
||
|
||
David 21 July 2004
|
||
- tweaked and enabled Rom's DB accelerator for the scheduler.
|
||
When a user is reporting results,
|
||
it reads the necessary fields in one gulp.
|
||
It updates only the necessary result fields.
|
||
It updates the workunit transition times in a single SQL statement.
|
||
It encloses this all in a transaction.
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
sched/
|
||
handle_request.C
|
||
|
||
Jeff 21 July 2004
|
||
- only grab 1000 Wus at a time in do_validate_scan()
|
||
|
||
sched/
|
||
validator.C
|
||
|
||
Noaa 21 July 2004
|
||
|
||
- changed frand's type from extern to static to match the .C definition
|
||
in gutil.h
|
||
- added gutil.C to the api's Makefile.graphics
|
||
|
||
api/
|
||
gutil.h
|
||
Makefile.graphics
|
||
|
||
David 22 July 2004
|
||
- Another DB performance tweak: add DB_RESULT::update_subset()
|
||
to update just those fields needed when send a result
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
sched/
|
||
sched_send.C
|
||
|
||
Rom 22 July 2004
|
||
- Another tweak to the transitioner so we can go back to use multiple
|
||
transitioners
|
||
|
||
db/
|
||
boinc_db.C, .h
|
||
sched/
|
||
transitioner.C
|
||
|
||
Daniel 2004-07-22
|
||
- use "estimated_delay" (sent in scheduler request by client) when
|
||
trying to meet wu.delay_bound.
|
||
|
||
sched/
|
||
sched_send.C
|
||
server_types.C,h
|
||
|
||
Jeff 22 July 2004
|
||
- Fixed a malformed SQL statement in DB_RESULT::update_subset()
|
||
that was leading to zero results being sent out.
|
||
|
||
db/
|
||
boinc_db.C
|
||
|
||
Eric K. July 22 2004
|
||
- Worked a bit more on the caching... Improvements include....
|
||
- A parameter file html/project.sample/cache_parameters.inc that
|
||
contains the cache TTL values for differing types of files, maximum
|
||
cache size and minimum free disk space in the cache directory.
|
||
- Reducing the cache TTL to 0 for a specific file type results in
|
||
caching being turned off for that file type.
|
||
- The cache now has 256 subdirectories to speed up file open times.
|
||
- The cache directories will be automatically built if they don't exist
|
||
when first called
|
||
- The cache size is checked every CACHE_SIZE_CHECK_FREQ page accesses.
|
||
If the max size or min free space are exceeded, file are purged in
|
||
order of age until the cache size is below the cutoff.
|
||
html/
|
||
inc/
|
||
cache.inc
|
||
profile.inc
|
||
project.sample/
|
||
cache_parameters.inc
|
||
user/
|
||
download.php
|
||
hosts_user.php
|
||
sample_index.php
|
||
show_user.php
|
||
team_display.php
|
||
top_hosts.php
|
||
top_teams.php
|
||
top_users.php
|
||
|
||
Karl 2004-07-23
|
||
- added argument check to create_work process_wu_template if <file_number>
|
||
isn't found (otherwise it just silently uses the previous command-line
|
||
argument as a file_ref!)
|
||
|
||
tools/
|
||
backend_lib.C
|
||
|
||
Daniel 2004-07-26
|
||
- Fixed fast wu_result check (broken by mysterious commit of
|
||
2004-07-24) that caused work to never be sent.
|
||
|
||
sched/
|
||
sched_send.C
|
||
|
||
Daniel 2004-07-26
|
||
- API: send current VM usage and resident set size in
|
||
update_app_progress(). Currently only works for Solaris and Linux.
|
||
Does anyone know how to do this on Windows or OSX?
|
||
- Fixed typo on prefs page
|
||
|
||
config.h.in
|
||
configure
|
||
configure.ac
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
app.C,h
|
||
html/inc/
|
||
prefs.inc
|
||
|
||
Rom July 27 2004
|
||
- Fix a bug where received results were not being updated
|
||
|
||
db/
|
||
boinc_db.C
|
||
sched/
|
||
handle_request.C
|
||
|
||
Daniel 2004-07-27
|
||
- client: upon file xfer failure, don't do multiple back-offs
|
||
|
||
client/
|
||
pers_file_xfer.C
|
||
|
||
Rom July 27 2004
|
||
- Create a tmp folder off of the project root so tasks and stuff can begin execution
|
||
from there, it was the log folder but the problem with that, is now our log directories
|
||
are symbolic links to a local volume so when we try to traverse back up to the project
|
||
folder we are missing a bunch of folders.
|
||
|
||
py/boinc/
|
||
setup_project.py
|
||
sched/
|
||
start
|
||
|
||
Daniel 2004-07-29
|
||
- API: fixed bug that caused vm_size and resident_set_size not to be
|
||
sent to core client
|
||
- client: check_max_mem_exceeded() revived - currently only checks
|
||
against workunit max_mem_usage attribute
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
app.C
|
||
|
||
Noaa 29 July 2004
|
||
- added another glut file to the source tree, updated the
|
||
makefile for it
|
||
- updated version of x_opengl.C
|
||
|
||
boincglut/
|
||
lib/
|
||
glut/
|
||
glut_glxext.c (new)
|
||
Makefile
|
||
|
||
api/
|
||
x_opengl.C
|
||
|
||
Noaa 30 July 2004
|
||
- added Makefile.Readme to explain how to make a Makefile.graphics
|
||
for a system since at the moment Makefile.graphics is restricted
|
||
to the setup on Miner. This can be used when Makefile.in is changed
|
||
so that a correct Makefile is generated at configure time.
|
||
|
||
client/
|
||
Makefile.Readme(new)
|
||
|
||
David 3 Aug 2004
|
||
- changed the API to handle compound applications.
|
||
API tasks are broken down into a number of boolean
|
||
"options" (struct BOINC_OPTIONS).
|
||
For compound apps, the controller and worker call a new
|
||
function boinc_init_options(), specifying which tasks
|
||
they're going to handle.
|
||
This reads the API init file, attaches shared memory,
|
||
and starts a timer (which does only the requested tasks).
|
||
|
||
The old boinc_init() still exists (with no args now).
|
||
It is to be used by single-process apps.
|
||
It calls boinc_init_options() with all options turned on.
|
||
- Add the core client version to the API init file;
|
||
if the app has the wrong API version file, it quits.
|
||
- Core client: if an app gives us a trickle-up message,
|
||
do a scheduler RPC.
|
||
- Fixed API bug where trickle-up msgs were being read
|
||
from the wrong message channel
|
||
- Removed old code from API involving windows events
|
||
|
||
api/
|
||
boinc_api.C,h
|
||
apps/
|
||
upper_case.C
|
||
client/
|
||
app.C,h
|
||
lib/
|
||
app_ipc.C,h
|
||
error_numbers.h
|
||
win_build/
|
||
upper_case.vcproj
|
||
|
||
David 3 Aug 2004
|
||
- fixed gui_test so that
|
||
gui_test -show_graphics fullscreen
|
||
works (I hope)
|
||
|
||
client/
|
||
gui_rpc_client.C
|
||
gui_test.C
|
||
|
||
David 3 Aug 2004
|
||
- Change PHP so that web site is turned off if "stop_web" file is present;
|
||
it no longer looks at "stop_sched" or "stop_daemons".
|
||
NOTE: I don't think any script creates stop_web.
|
||
for now you'll have to do it manually
|
||
|
||
html/inc
|
||
util.inc
|
||
xml.inc (new)
|
||
|
||
Daniel 2004-08-03
|
||
- Fixed "prefs and venue" issue. Before: host venue assignment always
|
||
comes from the project that is contacted. Now: host venue assignment
|
||
comes from the project with the newer global prefs.
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
sched/
|
||
handle_request.C
|
||
server_types.C,h
|
||
|
||
Rom 3 Aug 2004
|
||
- Change the Secure Windows Desktop message to include
|
||
an action item for those who want to fix it.
|
||
|
||
client/win/
|
||
boinc_ss.rc
|
||
|
||
David 4 Aug 2004
|
||
- Don't use transactions unless config.xml contains <use_transactions/>
|
||
|
||
sched/
|
||
handle_request.C
|
||
sched_config.C,h
|
||
transitioner.C
|
||
|
||
David 4 Aug 2004
|
||
- A <file_info> without a signature would cause
|
||
the file_upload_handler to crash.
|
||
Fixed this.
|
||
- File upload handler: if ignore_upload_certificate is set,
|
||
don't compute the expected signature
|
||
|
||
sched/
|
||
file_upload_handler.C
|
||
|
||
David 4 Aug 2004
|
||
- fix bug in links on Top Hosts
|
||
- friendlier messages in RPC reply if bad code sign key
|
||
|
||
html/inc/
|
||
host.inc
|
||
sched/
|
||
handle_request.C
|
||
|
||
Daniel 2004-08-04
|
||
- autoconf: added HAVE__PROC_* macros
|
||
- client: added m_swap checking for Linux (via /proc/meminfo) and
|
||
MacOSX (via sysctl(3) and CTL_USER (not CTL_VM!!!))
|
||
|
||
aclocal.m4
|
||
config.h.in
|
||
configure
|
||
configure.ac
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
hostinfo_unix.C
|
||
|
||
David 5 Aug 2004
|
||
- Kinder, gentler messages when need work
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
|
||
David 5 Aug 2004
|
||
- Initial support for hierarchical upload/download directories.
|
||
With large directories (100,000 - 1,000,000 files)
|
||
Solaris and NFS burn too much CPU time searching dirs.
|
||
Our plan is to use a 2-level hierarchy,
|
||
with the fanout specified in config.xml:
|
||
<uldl_dir_fanout>x<uldl_dir_fanout>
|
||
A fanout of 1024 should work OK for up to 1M files.
|
||
A couple of utility programs in tools/:
|
||
dir_hier_path shows where a file is
|
||
dir_hier_move moves existing files into a hierarchy
|
||
|
||
lib/
|
||
util.C,h
|
||
sched/
|
||
sched_config.C,h
|
||
tools/
|
||
Makefile.am
|
||
dir_hier_move.C
|
||
dir_hier_path.C
|
||
|
||
Rom 5 Aug 2004
|
||
- Some basic cleanup work
|
||
|
||
sched/
|
||
handle_request.C
|
||
main.C
|
||
|
||
Brian 5 Aug 2004
|
||
- Added my data management code for client. Full documentation is avaiable
|
||
on the BOINC website under Disk Space Management. Major changes to the
|
||
client are as follows:
|
||
- When a file is sent to be downloaded, it is associated with a project
|
||
which checks if there is enough space on disk
|
||
- Files are deleted when this space, as set by the user prefs, fills up
|
||
- Instead of sending the user prefs to the scheduling server, three
|
||
new values are sent and the server decides how much work to award
|
||
each host based on these values and config.xml prefs (documented)
|
||
- Files have a priority and expiration date which sorts them for
|
||
deletion purposes
|
||
- Uploaded my tools for sending and getting files to and from a host.
|
||
- Uploaded a tool that requests a file list from all hosts, although it has
|
||
not been fully implimented on the core client
|
||
- Uploaded a tool that sends a request for a host to delete a local file
|
||
|
||
client/
|
||
Makefile.am
|
||
gui_titles.h
|
||
scheduler_op.C,h
|
||
main.C
|
||
gui_titles.C
|
||
file_names.h
|
||
cs_statefile.C
|
||
cs_scheduler.C
|
||
cs_files.C
|
||
client_types.C,h
|
||
sched/
|
||
server_types.C,h
|
||
handle_request.C
|
||
sched_send.C
|
||
delete_file.C
|
||
get_file.C
|
||
request_file_list.C
|
||
send_file.C
|
||
Makefile.am
|
||
db/
|
||
boinc_db.h
|
||
|
||
Rom 5 Aug 2004
|
||
- Possible fix for segfaults on Linux platforms with the scheduler.
|
||
|
||
lib/
|
||
msg_log.h
|
||
sched/
|
||
sched_msgs.h
|
||
|
||
Noaa 5 August 2004
|
||
|
||
-changed source tree's glut library to boincglut to avoid
|
||
linking problems with possibly prexisting glut libraries
|
||
-updated the Makefile.Readme to reflect the change
|
||
-updated sample Makefile.graphics
|
||
|
||
boincglut/
|
||
lib/
|
||
glut/
|
||
Makefile
|
||
|
||
api/
|
||
Makefile.Readme
|
||
Makefile.graphics
|
||
|
||
/
|
||
Graphics.Readme
|
||
|
||
Daniel 2004-08-05
|
||
- regenerated build files to fix (some) compilation problems from the
|
||
data management code
|
||
|
||
aclocal.m4
|
||
client/
|
||
Makefile.in
|
||
sched/
|
||
Makefile.in
|
||
win_build/
|
||
boinc_cli.dsp,vcproj
|
||
boinc_gui.dsp,vcproj
|
||
|
||
David 6 Aug 2004
|
||
- Changed server software to use the hierarchical directory mechanism.
|
||
This means using dir_hier_path() to generate the pathname
|
||
of an input or output file,
|
||
rather than just concatenating directory and filename.
|
||
Also (in process_wu_template()) use dir_hier_url()
|
||
to generate the appropriate URL
|
||
- Add a scheme for transitioning from flat to hierarchical download dir.
|
||
Can have a <download_dir_alt> element in config.xml,
|
||
giving the path of an old, flat dir.
|
||
file_deleter will look here if it can't find file in main download dir.
|
||
- Pass around SCHED_CONFIG in a few interfaces
|
||
(e.g. create_work()) in order to access uldl_dir_fanout
|
||
|
||
html/inc/
|
||
profile.inc
|
||
lib/
|
||
util.C,h
|
||
sched/
|
||
file_deleter.C
|
||
file_upload_handler.C
|
||
make_work.C
|
||
sched_config.C,h
|
||
validate_util.C
|
||
wu_check.C
|
||
tools/
|
||
Makefile.am
|
||
backend_lib.C,h
|
||
create_work.C
|
||
dir_hier_move.C
|
||
dir_hier_path.C
|
||
|
||
David 6 Aug 2004
|
||
- In the web "get password" function,
|
||
look for not just the email addr but also
|
||
any munged versions of the email addr.
|
||
So people won't see "no such account" and create a new one.
|
||
(from Carl Christensen)
|
||
- Add escape_pattern() function for escaping "like" patterns;
|
||
use this in team lookup also
|
||
|
||
html/
|
||
inc/
|
||
db.inc
|
||
user/
|
||
mail_passwd.php
|
||
team_lookup.php
|
||
|
||
Brian 6 Aug 2004
|
||
- Fixed bug that was causing problems with BOINC client
|
||
Files were not being associated with projects because of small
|
||
bugs in the code that were resently checked in. Sorry
|
||
- Changed a naming convention in a new slice added to the data pies
|
||
in Windows GUI.
|
||
|
||
client/
|
||
client_types.C
|
||
cs_data.C
|
||
scheduler_op.C
|
||
gui_titles.C
|
||
|
||
Daniel 2004-08-06
|
||
- New preferences that cause apps to <quit/> instead of <suspend/>:
|
||
leave_apps_in_memory (<quit/> if false) and vm_max_used_pct (if
|
||
exceeded, apps <quit/>)
|
||
- Various code clean up and bug fixes from data management stuff
|
||
|
||
client/
|
||
app.C,h
|
||
client_types.C
|
||
cs_apps.C
|
||
cs_data.C
|
||
cs_prefs.C
|
||
cs_scheduler.C
|
||
prefs.C,h
|
||
html/inc/
|
||
prefs.inc
|
||
|
||
Noaa 6 August 2004
|
||
|
||
- removed libglut.a from cvs, was accidentally in there
|
||
|
||
boincglut/lib/glut/
|
||
libglut.a (removed)
|
||
|
||
Rom 6 Aug 2004
|
||
- Feeder should be using mysql_store_result instead of mysql_use_result.
|
||
|
||
db/
|
||
boinc_db.C
|
||
|
||
David 7 Aug 2004
|
||
- changed table type to InnoDB
|
||
(except for tables that need fulltext indices,
|
||
which apparently only works w/ ISAM)
|
||
- fixed bug w/ graphics GUI RPC
|
||
|
||
db/
|
||
schema.sql
|
||
constraints.sql
|
||
client/
|
||
gui_rpc_server.C
|
||
|
||
Daniel 2004-08-09
|
||
- client:
|
||
- check for exited apps right before (re)starting them for any
|
||
reason (unsuspend_all(), resume_or_start())
|
||
- upon suspend_all(), if leave_apps_in_memory is false, quit all
|
||
tasks with state == PROCESS_RUNNING (not just those with
|
||
scheduler_state == CPU_SCHED_RUNNING, as before)
|
||
|
||
client/
|
||
app.C,h
|
||
|
||
Noaa 9 August 2004
|
||
- changed version of x_opengl no print statements handles
|
||
fullscreen
|
||
- added extern "C" around protos in graphics_api.h
|
||
|
||
api/
|
||
x_opengl.C
|
||
graphics_api.h
|
||
|
||
Rom 10 Aug 2004
|
||
- Bug Fix: Moved 5 day benchmark checking code into main polling function
|
||
- Bug Fix: Added extra logic so that if benchmarks execute BOINC will
|
||
successfully start back up the applications if leave_apps_in_memory
|
||
is set to false
|
||
- Bug Fix: Fix a state file parsing issue where an extra <file_signature>
|
||
start tag was being included within the signed_xml field without the
|
||
closing tag, this could be what was causing problems with P@H and
|
||
incorrect result file info structures. This could also lead to
|
||
messages on the server about duplicate result submissions.
|
||
|
||
client/
|
||
app.C, .h
|
||
client_state.C
|
||
client_types.C
|
||
gui_rpc_server.C
|
||
cs_benchmark.C
|
||
|
||
Karl 2004-08-10
|
||
- fixed 'make dist' bugs caused by php files being removed
|
||
|
||
sched/
|
||
Makefile.am
|
||
tools/
|
||
add.C (removed - obsolete)
|
||
|
||
|
||
David 11 Aug 2004
|
||
- FILE_INFO::write(): don't write signed_xml if it's not relevant
|
||
(i.e. if there's no xml_signature)
|
||
This caused an XML syntax error in client_state.xml
|
||
|
||
NOTE: this looks similar to Rom's bug fix yesterday.
|
||
Two fixes are better than one, hopefully.
|
||
|
||
client/
|
||
client_types.C,h
|
||
|
||
David 11 Aug 2004
|
||
- Change "limit x offset y" to "limit y,x" in PHP code
|
||
for compatibility with PHP 3.x
|
||
(from Kalle Happonen)
|
||
|
||
html/
|
||
inc/
|
||
team.inc
|
||
user/
|
||
top_host.php
|
||
top_team.php
|
||
top_user.php
|
||
|
||
David 11 Aug 2004
|
||
- Divided app.C (which was getting too big) into:
|
||
app.C: constructor/destructor, XML write/parse
|
||
app_control.C: process control
|
||
app_graphics.C: graphics interactions
|
||
app_start.C: initialization/execution
|
||
|
||
client/
|
||
Makefile.am
|
||
app.C
|
||
app_control.C (new)
|
||
app_graphics.C (new)
|
||
app_start.C (new)
|
||
cs_apps.C
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
boinc_gui.vcproj
|
||
|
||
David 11 Aug 2004
|
||
- Make <copy_file/> work for application files as well as input files
|
||
(this copies files to the slot dir instead of making symbolic link).
|
||
This should make it possible to use shared-library files in Mac OS/X
|
||
that have to reside in the slot dir.
|
||
This was done by factoring out file-setup code into a function
|
||
(setup_file()) that's used for all files (app, input and output)
|
||
- Deleted code for file-descriptor-based application access to
|
||
input and output files.
|
||
This feature wasn't well-designed, and no one was using it.
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
app_start.C
|
||
lib/
|
||
app_ipc.C,h
|
||
|
||
David 11 Aug 2004
|
||
- check for disk space overflow only every few hours
|
||
(not every second!! It traverses the entire BOINC directory,
|
||
which could contain thousands of files)
|
||
- Write out-of-disk-space messages using msg_printf(),
|
||
(not a pop-up dialog)
|
||
- fix spelling errors in error messages (ouch!)
|
||
|
||
TODO: the disk-space logic needs review
|
||
|
||
client/
|
||
cs_data.C
|
||
main.C
|
||
|
||
David 11 Aug 2004
|
||
- DB_SCHED_RESULT_ITEM_SET::update_result(): escape the
|
||
stderr_out and xml_doc_out fields of result
|
||
(they may contain single-quote)
|
||
|
||
db/
|
||
boinc_db.C
|
||
|
||
Daniel 2004-08-11
|
||
- client: #include fixes for app.C refactoring
|
||
|
||
client/
|
||
app_control.C
|
||
app_start.C
|
||
|
||
David 11 Aug 2004
|
||
- comment out disk-management code, pending a review.
|
||
|
||
client/
|
||
client_state.C
|
||
client_types.C
|
||
cs_data.C
|
||
cs_scheduler.C
|
||
scheduler_op.C
|
||
|
||
Rom 11 Aug 2004
|
||
- Move gui_rpc_client.C, .h to the clientgui folder.
|
||
- Removed wx based document objects in favor of the
|
||
gui_rpc_client.C based objects.
|
||
- Update source to match.
|
||
|
||
client/
|
||
gui_rpc_client.C, .h (removed)
|
||
gui_test.C (removed)
|
||
makefile.gui_test (removed)
|
||
clientgui/
|
||
gui_rpc_client.C, .h (added)
|
||
gui_test.C (added)
|
||
makefile.gui_test (added)
|
||
***** Removed Numerous Files *****
|
||
BOINCGUI.vcproj
|
||
MainDocument.cpp, .h
|
||
MainFrame.cpp
|
||
MessagesView.cpp, .h
|
||
ProjectsView.cpp
|
||
ResourceUtilizationView.cpp, .h
|
||
TransfersView.cpp, .h
|
||
WorkView.cpp
|
||
|
||
David 12 Aug 2004
|
||
- removed call to associate_file() for user files.
|
||
- fixed some code formatting, and comments of the form
|
||
foo(); // call foo
|
||
|
||
client/
|
||
client_types.C
|
||
cs_apps.C
|
||
cs_prefs.C
|
||
cs_scheduler.C
|
||
http.C
|
||
pers_file_xfer.C
|
||
prefs.C
|
||
lib/
|
||
filesys.C
|
||
util.C
|
||
|
||
David 12 Aug 2004
|
||
- Improved error checking and reporting in parse state file
|
||
- check error returns of parse functions
|
||
- temp_project is local to block (so get a new one)
|
||
- delete objects in all error cases
|
||
- Check and report errors in init/insert of PERS_FILE_XFER
|
||
while parsing state file
|
||
- ignore app/app_version from state file if project is anonymous platform
|
||
- If get error parsing host info, time/net stats etc.,
|
||
continue parsing rather than error out
|
||
- Improved error checking and reporting in parsing
|
||
and processing of scheduler reply
|
||
- check error returns of parse functions
|
||
- use msg_printf() instead of show_message() or fprintf(stderr)!!
|
||
- fix memory leaks
|
||
|
||
client/
|
||
client_msgs.C
|
||
cs_scheduler.C
|
||
cs_statefile.C
|
||
scheduler_op.C
|
||
|
||
David 12 Aug 2004
|
||
- compile fixes from Jakob Pedersen
|
||
|
||
client/
|
||
app.C
|
||
app_start.C
|
||
lib/
|
||
util.C
|
||
sched/
|
||
db_dump.C
|
||
send_file.C
|
||
|
||
David 12 Aug 2004
|
||
- Originally every scheduler reply contained
|
||
user, host and team info.
|
||
This is no longer the case because, for example,
|
||
the "no work available" logic now skips DB access.
|
||
Fixed a few bugs related to this:
|
||
- scheduler: send user/host/team info only if
|
||
the corresponding record was read from DB
|
||
- client: get team name, user credits, host credits
|
||
from scheduler reply only if they're actually there
|
||
(use -1 as a null value for credit fields)
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
scheduler_op.C
|
||
sched/
|
||
handle_request.C
|
||
server_types.C
|
||
|
||
David 12 Aug 2004
|
||
- canonicalize_master_url(): prepend http:// if it's not there.
|
||
And replace messy std::string code with nice stdlib code
|
||
|
||
lib/
|
||
util.C
|
||
|
||
David 12 Aug 2004
|
||
- db_dump: add <userid> element to team XML
|
||
- web: don't show memory BW, since we're not measuring it any more
|
||
- clear user.has_profile when delete profile
|
||
|
||
html/
|
||
inc/
|
||
host.inc
|
||
user.inc
|
||
user/
|
||
delete_profile.php
|
||
sched/
|
||
db_dump.C
|
||
tools/
|
||
dir_hier_move.C
|
||
|
||
David 13 Aug 2004
|
||
- use 0 (not -1) as null value for unix times
|
||
- comment out remaining disk management code
|
||
- compile error
|
||
|
||
client/
|
||
client_types.C,h
|
||
cs_scheduler.C
|
||
scheduler_op.C
|
||
sched/
|
||
server_types.C
|
||
|
||
David 13 Aug 2004
|
||
- transitioner: don't set wu.transition.time to anything less
|
||
than now + wu.delay_bound.
|
||
This prevents the transitioner from repeatedly handling a WU
|
||
in the case where it's behind schedule
|
||
|
||
sched/
|
||
transitioner.C
|
||
|
||
Noaa 13 Aug 2004
|
||
|
||
- changed Graphics.Readme to reflect movement of the gui_test stuff
|
||
|
||
/
|
||
Graphics.Readme
|
||
|
||
Rom 13 Aug 2004
|
||
- Needed to backout the newer style of determining disk free space
|
||
on the clients since all the clients currently reporting to us
|
||
are 3.x clients and still using the original scheme.
|
||
|
||
sched/
|
||
sched_send.C
|
||
server_types.C, .h
|
||
|
||
David 13 Aug 2004
|
||
- bad IP address display on GUI RPC reject
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
sched/
|
||
request_file_list.C
|
||
|
||
Karl 2004-08-14
|
||
- documentation notes on transaction support in MySQL versions &
|
||
troubleshooting
|
||
|
||
doc/
|
||
software.php
|
||
build_server.php
|
||
|
||
David 16 Aug 2004
|
||
- fix compile error
|
||
- check bind/listen failure in GUI RPC code
|
||
- added boinc_close_socket()
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
net_xfer.C
|
||
lib/
|
||
util.C,h
|
||
|
||
David 16 Aug 2004
|
||
- changed "engine" to "type" in schema SQL
|
||
|
||
db/
|
||
schema.sql
|
||
|
||
David 16 Aug 2004
|
||
- compile fixes and more commenting-out of disk mgt code
|
||
|
||
sched/
|
||
delete_file.C
|
||
sched_send.C
|
||
server_types.C,h
|
||
|
||
David 16 Aug 2004
|
||
- client: check error return from choose_version_num().
|
||
There's a remote chance this has something to do with
|
||
the "scrambled XML" problem
|
||
- changed my 13 Aug change to transitioner
|
||
so that new transition time is at least now + 1 day
|
||
|
||
client/
|
||
cs_apps.C
|
||
cs_scheduler.C
|
||
sched/
|
||
transitioner.C
|
||
|
||
Rom 16 Aug 2004
|
||
- After much gnashing of teeth, head scratching, and other
|
||
assorted things, I finally can build the cross platform GUI again.
|
||
|
||
The default project builds for the wxWidgets static library, MSVCRT
|
||
static library, and STL static library really don<6F>t like each other.
|
||
It took a few days to get things to a point they would compile, and we
|
||
still throw a few warnings on the release build.
|
||
|
||
clientgui/
|
||
BOINCGUI.sln
|
||
BOINCGUI.vcproj
|
||
gui_rpc_client.C, .h (removed)
|
||
makefile.gui_test (removed)
|
||
lib/
|
||
gui_rpc_client.C, .h (added)
|
||
makefile.gui_test (added)
|
||
|
||
David 17 Aug 2004
|
||
- server changes (courtesy Pietro Cicotti from Predictor@home)
|
||
to implement homogeneous redundancy more efficiently.
|
||
Instead of scanning result table,
|
||
use the workunit.workseq_next field to store an integer encoding
|
||
of the platform the WU has been sent to, if any.
|
||
- added utility program (hr_db_convert.C) to convert
|
||
existing an database to new format
|
||
|
||
sched/
|
||
sched_send.C
|
||
tools/
|
||
hr_db_convert.C (new)
|
||
|
||
David 17 Aug 2004
|
||
- removed boinc_close_socket() from util.C,
|
||
since it causes Win link error in upper_case.
|
||
TODO: would be nice to use lib/ code as library
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
net_xfer.C
|
||
lib/
|
||
util.C,h
|
||
Rom 17 Aug 2004
|
||
- BugFix: Fix trickle messages from host.
|
||
- BugFix: HR fix for the scheduler.
|
||
|
||
sched/
|
||
handle_request.C
|
||
sched_send.C
|
||
|
||
Karl 2004-08-18
|
||
- update_versions:
|
||
- Print warning if specified signature files won't be used
|
||
- Print warning and query continue if no signature file specified
|
||
- Allow file.file_ref_info's contents to be used for inserting extra
|
||
info in the <file_ref> attribute (e.g. <copy_file/>)
|
||
|
||
tools/
|
||
update_versions
|
||
py/Boinc/
|
||
tools.py
|
||
|
||
David 19 Aug 2004
|
||
- don't show a zillion digits of precision on file xfer speeds
|
||
|
||
client/
|
||
pers_file_xfer.C
|
||
|
||
David 20 Aug 2004
|
||
- strip_whitespace() did infinite loop on empty string!!
|
||
- removed old code in db_boinc
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
lib/
|
||
util.C
|
||
|
||
David 20 Aug 2004
|
||
- PHP fixes
|
||
|
||
html/
|
||
inc/
|
||
cache.inc
|
||
util.inc
|
||
ops/
|
||
show_log.php
|
||
white.css (new)
|
||
|
||
David 20 Aug 2004
|
||
- removed perror()s from shmem functions.
|
||
Shouldn't do I/O at this level.
|
||
|
||
html/user/
|
||
info.php
|
||
stats.php
|
||
lib/
|
||
shmem.C
|
||
|
||
Daniel 2004-08-20
|
||
- client: fixed file xfer bug that caused null pointer dereference upon
|
||
some xfer failures
|
||
|
||
client/
|
||
pers_file_xfer.C
|
||
|
||
Rom 20 Aug 2004
|
||
- Tag for 4.03 release, all platforms
|
||
boinc_release_4_03
|
||
|
||
David 20 Aug 2004
|
||
- handle_exited_app():
|
||
Returning early in all cases of exiting with zero status
|
||
caused core client not to read stderr_out file
|
||
or clean out slot dir.
|
||
This made test_uc.py fail.
|
||
|
||
DANIEL: please examine this and see if you agree,
|
||
and get test_uc.py working any time you do a major checkin
|
||
|
||
client/
|
||
app_control.C
|
||
|
||
David 20 Aug 2004
|
||
- already_sent_to_different_platform():
|
||
fix concurrency bug by reading WU.workseq_next
|
||
from database just prior to checking,
|
||
then updating the field immediately if needed.
|
||
- scheduler: update_wu_transition_time():
|
||
use update_field(); more efficient
|
||
- Added DB_BASE::get_field_int(): get a single integer
|
||
field from a DB record.
|
||
A little cheaper than reading the whole record
|
||
- DB_BASE::lookup(): remove code that sees if record is unique.
|
||
It's called after mysql_free_result(),
|
||
so it will never return anything.
|
||
- DB code: changed "if (db->mysql && is_high_priority) to just
|
||
"if (is_high_priority)".
|
||
db->mysql is a pointer, and is always nonzero.
|
||
It's not a flag saying whether the DB is MySQL.
|
||
All this code is only for MySQL anyway.
|
||
|
||
db/
|
||
db_base.C,h
|
||
sched/
|
||
sched_send.C
|
||
|
||
David 21 Aug 2004
|
||
- Fixed nasty bug in feeder that has been present since April 3 (doh!).
|
||
scan_work_array() scanned the work array with logic of the form
|
||
if (wu_result.state == PRESENT) {
|
||
...
|
||
} else {
|
||
// assume wu_result.state == EMPTY
|
||
}
|
||
but with the introduction of the CHECKED_OUT state,
|
||
this became invalid, and the feeder was overwriting entries while they
|
||
were "checked out" by a scheduler.
|
||
Fixed this by changing if() to switch()
|
||
- Added check to scan_work_array(): when read result from DB,
|
||
make sure result.workunitid matches the WU's ID.
|
||
This ensures correctness even if the feeder is wrong.
|
||
- removed commented-out code from feeder
|
||
|
||
sched/
|
||
feeder.C
|
||
sched_send.C
|
||
sched_shmem.h
|
||
|
||
David 21 Aug 2004
|
||
- removed old commented-out code
|
||
|
||
client/
|
||
client_types.C,h
|
||
cs_apps.C
|
||
|
||
David 21 Aug 2004
|
||
- If an app fails to go into fullscreen mode,
|
||
mark it as MODE_UNSUPPORTED so that we don't ask it again
|
||
|
||
client/
|
||
cs_apps.C
|
||
ss_logic.C
|
||
|
||
David 23 Aug 2004
|
||
- Cleanup and bug fixes in CPU scheduler
|
||
There was inconsistent terminology,
|
||
e.g. a task could have scheduler_state = CPU_SCHED_RUNNING
|
||
but actually be suspended; it could have state = PROCESS_RUNNING
|
||
but actually be suspended, and so on.
|
||
New terminology:
|
||
"executing" (formerly "running", which was used ambiguously)
|
||
CPU_SCHED_SCHEDULED (formerly CPU_SCHED_RUNNING):
|
||
the CPU scheduler has given its permission
|
||
for a task to execut; it may not actually be executing
|
||
PROCESS_EXECUTING: the process is executing (not suspended)
|
||
PROCESS_SUSPENDED: the process is suspended
|
||
new function: ACTIVE_TASK::process_exists():
|
||
true if the state is EXECUTING, SUSPENDED, or ABORT_PENDING
|
||
Use this instead of (state == PROCESS_RUNNING) in many cases
|
||
renamed ACTIVE_TASK::task_exited() to has_task_exited()
|
||
changed logic in ACTIVE_TASK_SET::suspend_all()
|
||
ACTIVE_TASK_SET::unsuspend_all():
|
||
Removed code that checks for process exit.
|
||
Poll code should take care of this.
|
||
- enabled preemption by quit
|
||
- add MSG_CHANNEL::send_msg_overwrite(): send message even
|
||
if there's already a message there.
|
||
Use this for process control messages.
|
||
- API: if suspended, check for <quit/> messages as well as <resume/>
|
||
(this affects Unix only)
|
||
- add enclosing tag for app init data file (so XML parsers accept it)
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
app.C,h
|
||
app_control.C
|
||
app_graphics.C
|
||
app_start.C
|
||
client_state.C
|
||
cs_apps.C
|
||
cs_prefs.C
|
||
gui_rpc_server.C
|
||
lib/
|
||
app_ipc.C,h
|
||
|
||
David 23 Aug 2004
|
||
- web: add cross-project ID to user page
|
||
- db_dump: add NO_SORT option (default)
|
||
|
||
html/
|
||
inc/
|
||
user.inc
|
||
user/
|
||
prefs_edit_form.php
|
||
sched/
|
||
db_dump.C
|
||
|
||
David 24 Aug 2004
|
||
- logic error on task start (found by Carl C.)
|
||
|
||
client/
|
||
app_start.C
|
||
cs_apps.C
|
||
|
||
Rom 24 Aug 2004
|
||
- Fix a logic error where the benchmarks would continuously run on a
|
||
core client upgrade.
|
||
- Comment out event logging to the Windows Event log until we can
|
||
refactor the various messages.
|
||
|
||
client/
|
||
client_state.C
|
||
main.C
|
||
|
||
Rom 24 Aug 2004
|
||
- Tag for 4.04 release, all platforms
|
||
boinc_release_4_04
|
||
|
||
David 24 Aug 2004
|
||
- Core client: check that shared memory exists before
|
||
attempting to send or get msgs to an app.
|
||
This hopefully will fix a crashing bug
|
||
that happens when you use quit-on-suspend
|
||
(since the shared-memory seg is deleted on quit)
|
||
- Separate get_app_status_msg() and get_trickle_up_msg() functions
|
||
|
||
client/
|
||
app.h
|
||
app_control.C
|
||
app_graphics.C
|
||
|
||
Rom 24 Aug 2004
|
||
- Tag for 4.05 release, all platforms
|
||
boinc_release_4_05
|
||
|
||
David 25 Aug 2004
|
||
- Make it configurable (via <show_results/> in config.xml)
|
||
whether results are shown on user web site
|
||
|
||
html/
|
||
inc/
|
||
host.inc
|
||
util.inc
|
||
user/
|
||
results.php
|
||
|
||
David 25 Aug 2004
|
||
- Core client: print a message when an app is put in LIMBO state
|
||
(i.e. exit zero but w/o finish file)
|
||
|
||
client/
|
||
app_control.C
|
||
|
||
Jeff 25 Aug 2004
|
||
- limit workunit and result enumerations in the file_deleter to 1000.
|
||
|
||
sched/
|
||
file_deleter.C
|
||
|
||
David 27 Aug 2004
|
||
- add "use bytes" pragma to grep_logs (from Carl C.)
|
||
|
||
tools/
|
||
grep_logs
|
||
|
||
David 27 Aug 2004
|
||
- scheduling server only updates cross-project ID if the one
|
||
in request message is greater than what it has (from Janus K)
|
||
|
||
sched/
|
||
handle_request.C
|
||
|
||
David 27 Aug 2004
|
||
- db_ops DB browsing fixes (from Kalle Happonen)
|
||
|
||
html/inc/
|
||
db_ops.inc
|
||
|
||
Rom 29 Aug 2004
|
||
- Increase the feeder buffer sizes so that whatever this fcgi problem is,
|
||
we don't have to bounce the project so often. This is a temporary hack
|
||
until I or somebody else figures out whats going on.
|
||
|
||
sched/
|
||
feeder.C
|
||
sched_shmem.h
|
||
|
||
Rom 30 Aug 2004
|
||
- Win98 machines seem to be throwing a SEH stack overflow exception.
|
||
Our unhandled exception filter in this case allocated a 1MB memory buffer
|
||
and pointed the ESP register at it. Well this chunk of code seems to
|
||
be broken, it is probably the first time it has ever been used.
|
||
|
||
lib/
|
||
diagnostics.C
|
||
|
||
Rom 31 Aug 2004
|
||
- Win98 has a memory leak condition in dealing with memory mapped files.
|
||
So lets go ahead and fix one possible way to slow down the leak, A better
|
||
fix is to recycle the shared memory segments. Recycling of the shared
|
||
memory segments is forthcomming.
|
||
|
||
lib/
|
||
shmem.C
|
||
|
||
David 31 Aug 2004
|
||
- Don't delete shared-memory segment while ACTIVE_TASK is preempted
|
||
via quit (hopefully will fix Win98 problem).
|
||
- Add shmem_seg_name field to ACTIVE_TASK
|
||
- Factor ACTIVE_TASK::get_shmem_seg_name() out of write_app_init_file().
|
||
It had no business being there.
|
||
In particular, write_app_init_file() is sometimes called
|
||
in the middle of execution, when you definitely don't want
|
||
to create a new shmem seg name
|
||
- write_app_init_file() doesn't take APP_INIT_DATA arg
|
||
- define type SHMEM_SEG_NAME (for uniformity across platforms)
|
||
|
||
client/
|
||
app.C,h
|
||
app_control.C
|
||
app_start.C
|
||
lib/
|
||
app_ipc.C,h
|
||
|
||
David 31 Aug 2004
|
||
- feeder/scheduler:
|
||
We were seeing problems where the shared-mem array was
|
||
filling up with results that were "locked" by a particular
|
||
scheduler process, which apparently had then died,
|
||
leaving that slot in limbo.
|
||
Add code to the feeder to check if the process that
|
||
locked a slot still exists, and unlock it if not.
|
||
- end_cache(): check for ".." in params string.
|
||
We've had problems with files mysteriously disappearing,
|
||
and it's possible that the caching mechanism has a security loophole.
|
||
html/
|
||
inc/
|
||
cache.inc
|
||
prefs.inc
|
||
user/
|
||
download_network.php
|
||
sched/
|
||
feeder.C
|
||
main.C
|
||
sched_send.C
|
||
sched_shmem.h
|
||
|
||
Jeff 31 Aug 2004
|
||
- limit workunit enumeration in the assimilator to 1000.
|
||
|
||
sched/
|
||
assimilator.C
|
||
|
||
Rom 31 Aug 2004
|
||
- BUGFIX: Moved the delete shared memory code to the end of the function, to
|
||
happen right before slot directory cleanup. The previous instance of code
|
||
t8hat was commented out was for the unix branch.
|
||
- BUGFIX: The shared memory enumerator had a bug where the name it was
|
||
enumerating wasn't the same name that was eventually locked by the start
|
||
routine, this caused the client to only be able to run one application at
|
||
a time
|
||
- BUGFIX: The shared memory enumerator was still referencing the slot
|
||
directory number instead of the for loop iterator.
|
||
- BUGFIX: When a process has been preempted, it's pid handle and thread handle
|
||
need to be freed.
|
||
- BUGFIX: Calling MapViewOfFile on Win98 automatically causes a memory leak,
|
||
so don't call it unless we really have to.
|
||
|
||
NOTE: I would like to thank Walt Gribben for helping me by debugging this issue
|
||
for me.
|
||
|
||
client/
|
||
app_control.C
|
||
app_start.C
|
||
lib/
|
||
error_numbers.h
|
||
shmem.C, .h
|
||
|
||
Rom 31 Aug 2004
|
||
- Tag for 4.06 release, all platforms
|
||
boinc_core_release_4_06
|
||
|
||
Rom 1 Sep 2004
|
||
- Language File Updates across all languages.
|
||
|
||
client/translations/
|
||
<Many Files>
|
||
|
||
Rom 1 Sep 2004
|
||
- Tag for 4.07 release, all platforms
|
||
boinc_core_release_4_07
|
||
|
||
David 1 Sep 2004
|
||
- fixed bug in web-caching code that caused files in html/user
|
||
to be randomly deleted.
|
||
The function clean_cache($dir) was enumerating files in $dir,
|
||
and doing unlink($file), but without chdir'ing into $dir
|
||
or concatenating $dir onto $file.
|
||
|
||
html/inc
|
||
cache.inc
|
||
|
||
David 2 Sept 2004
|
||
- If an executable file failed validation, any results using
|
||
that app version would hang forever in the "downloading" state.
|
||
Two changes were needed to fix this:
|
||
1) garbage_collect(): when scanning results,
|
||
check for download failures of APP_VERSION files
|
||
(as well as WU files), and if so mark the result as failed.
|
||
Added new functions APP_VERSION::had_failure() and get_file_errors().
|
||
2) handle_scheduler_reply(): if get an APP_VERSION that we already have,
|
||
reset any errored-out FILE_INFOs,
|
||
i.e. give it a chance to download again.
|
||
There are various ways to do this, but this seems the cleanest.
|
||
Added new functions FILE_INFO::reset()
|
||
and APP_VERSION::clear_errors()
|
||
- made verify_downloaded_file() into a member function of FILE_INFO.
|
||
It now sets the error_msg field to a descriptive string
|
||
so that failures will be reported to project
|
||
|
||
client/
|
||
client_state.C
|
||
client_types.C,h
|
||
cs_files.C
|
||
cs_scheduler.C
|
||
pers_file_xfer.C
|
||
|
||
David 2 Sept 2004
|
||
- change MAX_WU_RESULTS from 500 to 100
|
||
|
||
sched/
|
||
sched_shmem.h
|
||
|
||
Rom 2 Sep 2004
|
||
- BUGFIX: The active task destructor also tried to clean up dangling handles, so
|
||
after cleaning up a handle lets also set the handle value to NULL to keep it from
|
||
being acted on again.
|
||
|
||
client/
|
||
app.C
|
||
app_control.C
|
||
|
||
David 2 Sept 2004
|
||
- PERS_FILE_XFER::poll(): don't check file size if it's not specified in FILE_INFO
|
||
==> This fixes download failure of user-supplied files
|
||
- PROJECT::parse_preferences_for_user_files(): fill in fip->project
|
||
==> This fixes a crashing bug when user supplies files
|
||
- User-visible test:
|
||
change "preempt" to "pause"
|
||
change "quit" to "removed from memory"
|
||
change "suspend" to "left in memory"
|
||
|
||
client/
|
||
app_control.C
|
||
client_types.C
|
||
gui_titles.C
|
||
pers_file_xfer.C
|
||
|
||
Rom 2 Sep 2004
|
||
- BUGFIX: During a project reset the next_runnable_result becomes invalid, so each
|
||
time we go through the loop reset all next_runnable_result to NULL so we don't
|
||
crash.
|
||
|
||
client/
|
||
cs_apps.C
|
||
|
||
David 2 Sept 2004
|
||
- PERS_FILE_XFER::poll(): fixed bug that caused hang
|
||
|
||
NOTE: check_giveup(), handle_xfer_failure(), and retry_or_backoff()
|
||
are a total mess. I'll get to them next.
|
||
|
||
- If an app exits with zero status but no finish file,
|
||
instead of putting it in limbo (which causes the core client to do no work)
|
||
just restart the process again.
|
||
NOTE: eventually we should detect when this is happening repeatedly,
|
||
and error out the result.
|
||
For now, just print a message telling user they may need to reset project.
|
||
- rename PERS_FILE_XFER::xfer_done to pers_xfer_done
|
||
- move process cleanup code into separate functions
|
||
(ACTIVE_TASK::close_process_handles()
|
||
and ACTIVE_TASK::detach_and_destroy_shmem())
|
||
client/
|
||
app.C,h
|
||
app_control.C
|
||
pers_file_xfer.C
|
||
|
||
David 3 Sept 2004
|
||
- fix bugs in previous checkin
|
||
- schedule_cpus()
|
||
- clear temp vars at start (bug)
|
||
- don't delete ACTIVE_TASK on start failure;
|
||
other code takes care of this
|
||
- get rid of RESULT.is_active field.
|
||
Things that can be derived from other fields,
|
||
and need to be maintained in a bunch of places throughout
|
||
the code, are a bad programming practice
|
||
|
||
client/
|
||
app_control.C
|
||
app_start.C
|
||
client_types.C,h
|
||
cs_apps.C
|
||
|
||
David 4 Sept 2004
|
||
- New features for message boards (from Janus Kristensen):
|
||
Added:
|
||
- External avatars (but commented it out -
|
||
it's better to use hosted avatars)
|
||
(Tiny images under people's name)
|
||
- Hosted avatars
|
||
(Uploads and scales to 100x100 in the IMGAGE_PATH dir)
|
||
- Special users
|
||
(Project admins, devs, newcomers etc. will get a line
|
||
telling what they are under their name)
|
||
- Option to display images as links
|
||
- Option to open links in a new window
|
||
- Option to hide avatars
|
||
- Option to enable/disable attach of signature by default
|
||
- Settings for sorting is now handled using the database
|
||
instead of cookies (ie. you can change host without
|
||
having to set your preferences up again,
|
||
some users also have cookies disabled)
|
||
- Preview of signature
|
||
- Unread posts are marked as "Unread"
|
||
(if they are newer than 2 days (configurable in forum.inc)
|
||
and user hasn't visited the post)
|
||
- Interface to forum preferences and sorting methods
|
||
- Link to interface from user preferences
|
||
- Reset forum preferences button
|
||
(Some users have reported that an unusually long
|
||
signature with html could make the page unviewable. This fixes it)
|
||
- Option to sort with "Oldest first" in answers in the FAQ area
|
||
|
||
Moved:
|
||
- Signature input in user prefs to forum prefs
|
||
|
||
Fixed:
|
||
- Sorting in answers in the FAQ area didn't work
|
||
- minor speedups and html stuff
|
||
|
||
DB-stuff:
|
||
- create forum_preferences & forum_logging
|
||
- transfer old settings
|
||
|
||
NOTE: If you want to use these features, you will need to
|
||
create two new DB tables (forum_preferences and forum_logging;
|
||
just execute the commands from schema.sql)
|
||
and you'll probably want to copy existing signatures and nposts
|
||
from the user table (see html/ops/db_update.php)
|
||
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
forum_show.inc
|
||
user.inc
|
||
user/
|
||
edit_forum_preferences_action.php (new)
|
||
edit_forum_preferences_form.php (new)
|
||
edit_user_info_action.php
|
||
edit_user_info_form.php
|
||
forum_forum.php
|
||
forum_post.php
|
||
forum_reply.php
|
||
forum_thread.php
|
||
|
||
David 4 Sept 2004
|
||
- removed old work_buffer_max_days stuff
|
||
(it's now only min_days)
|
||
|
||
client/
|
||
prefs.C,h
|
||
html/inc/
|
||
prefs.inc
|
||
|
||
|
||
David 5 Sept 2004
|
||
- Added new GUI RPCs and fixed bugs (from Sebastian Masch)
|
||
get_network_mode()
|
||
set_network_mode()
|
||
retry_file_transfer()
|
||
|
||
client/
|
||
client_types.C
|
||
cs_statefile.C
|
||
gui_rpc_server.C
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
|
||
|
||
David 5 Sept 2004
|
||
- Bug fixes for recent forum changes (from Janus K)
|
||
|
||
NOTE: if you've already added the forum_preferences table,
|
||
you'll need to do a DB update to add a new field
|
||
(see html/ops/db_update.php)
|
||
|
||
db/
|
||
schema.sql
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
ops/
|
||
db_update.php
|
||
user/
|
||
forum_forum.php
|
||
forum_thread.php
|
||
|
||
Rom 5 Sep 2004
|
||
- Tag for 4.08 release, all platforms
|
||
boinc_core_release_4_08
|
||
|
||
David 6 Sept 2004
|
||
- The Windows GUI and CLI versions were using different mechanisms
|
||
to ensure that only one instance of BOINC is running.
|
||
Factored this into a function check_unique_instance(),
|
||
which is used by all versions.
|
||
|
||
client/
|
||
file_names.C,h
|
||
main.C
|
||
win/
|
||
wingui_mainwindow.cpp
|
||
lib/
|
||
error_numbers.h
|
||
|
||
David 7 Sept 2004
|
||
- (from Ben Herndon) Some compilers optimize away sections of the Whetstone
|
||
benchmark function, since their results aren't used outside the function.
|
||
To deal with this, we added an global-scope array (extern_array[])
|
||
and store the result of each section into it.
|
||
Also changed section 3 by initializint j from the extern_array,
|
||
so the compiler can't optimize out all the conditionals.
|
||
|
||
client/
|
||
whetstone.C
|
||
|
||
David 7 Sept 2004
|
||
- change "upgrade" to query user before overwriting files
|
||
|
||
tools/
|
||
upgrade
|
||
|
||
David 7 Sept 2004
|
||
- recognize CPU type on HP (DEC) alpha (from Duane Krahn)
|
||
|
||
client/
|
||
hostinfo_unix.C
|
||
|
||
Rom 8 Sep 2004
|
||
- If we can lock the lockfile, also aquire the global mutex.
|
||
If we don't the screensaver
|
||
cannot properly detect that BOINC is executing.
|
||
|
||
client/
|
||
file_names.C
|
||
|
||
Jeff 09 Sep 2004
|
||
- Change the validator to handle the case where one or more
|
||
of the result files for a WU's result set can't be read.
|
||
Currently, this case results in this WU and its results
|
||
never getting looked at again - no science, no credit.
|
||
|
||
We distinguish 2 cases:
|
||
1) transient failure, e.g. an NFS mount is not working.
|
||
(can't read directory)
|
||
In this case check_set() returns a special code to the validator,
|
||
which arranges for the WU to get transitioned again in a few hours.
|
||
2) permanent failure (file doesn't exist)
|
||
The result's validate_state is set to ERROR (new state),
|
||
which is generally equivalent to INVALID
|
||
- add new WU arg to check_set()
|
||
(so it can access min_quorum)
|
||
|
||
This is coordinated seti_boinc / boinc change.
|
||
This note is repeated in the seti_boinc checkin_notes.
|
||
|
||
seti_boinc changes:
|
||
- get_result_file(), if it cannot read the result file,
|
||
tries to read the directory where the result file should be.
|
||
If it can read the directory, it returns ERR_FOPEN, as before.
|
||
If it cannot read the directory, it resturns ERR_OPENDIR.
|
||
ERR_OPENDIR in this context signals a possibly transient problem.
|
||
Upon a successful result read, it sets sah_result.have_result
|
||
(a new data member as of this change) to true.
|
||
- check_set(), upon return from get_result_file() :
|
||
- sets result.validate_state to VALIDATE_STATE_ERROR (a new state)
|
||
and retval to zero if there is a nonzero retval from check_set()
|
||
and it is not ERR_OPENDIR. It then continues.
|
||
- otherwise just continues.
|
||
check_set() then determines if any IO errors brought the result count
|
||
below wu.min_quorum. If not, it continues. Otherwise it returns.
|
||
In all subsequent logic any results for which
|
||
sah_result.have_result == false are skipped.
|
||
Note that the result and the sah_result vectors are associated.
|
||
|
||
validate/
|
||
sah_result.h
|
||
sah_validate.cpp
|
||
sah_boinc_db.cpp
|
||
|
||
boinc changes:
|
||
- new validate state VALIDATE_STATE_ERROR.
|
||
- in the enumeration for check_set(),
|
||
we now include a clause to check for VALIDATE_STATE_INIT
|
||
in order to ignore results set to VALIDATE_STATE_ERROR.
|
||
This enumeration query now matches that for check_pair().
|
||
Note that the only possible retvals from check_set()
|
||
are now zero or ERR_OPENDIR.
|
||
Note that logic to retry possibly transient errors still needs
|
||
to be done.
|
||
Also left to be done is a transitioner change to subtract
|
||
the number of results in state VALIDATE_STATE_ERROR
|
||
from the count of active results.
|
||
The latter change is needed to stimulate the production
|
||
of additional results for the affected WU.
|
||
|
||
sched/
|
||
validator.C
|
||
db/
|
||
boinc_db.h
|
||
|
||
|
||
Rom 9 Sep 2004 ( for Sebastian Masch )
|
||
- Don't cause the core client to rewrite the state file
|
||
for every block transfered during a network operation.
|
||
|
||
client/
|
||
pers_file_xfer.C
|
||
|
||
David 9 Sept 2004
|
||
- Further refinements of validation to deal with
|
||
recoverable/nonrecoverable file read errors.
|
||
Revised the signatures of check_set() and check_pair(),
|
||
and revised the validator accordingly.
|
||
|
||
db/
|
||
boinc.db.h
|
||
sched/
|
||
sample_bitwise_validator.C
|
||
sample_trivial_validator.C
|
||
validate_util.C,h
|
||
validator.C
|
||
|
||
David 9 Sept 2004
|
||
- added try_fopen() (from Jeff Cobb):
|
||
like fopen(), but on tells you whether it's recoverable or not
|
||
|
||
lib/
|
||
util.C,h
|
||
|
||
|
||
David 9 Sept 2004
|
||
- Added support for stats access via WAP (for cell phones)
|
||
(from Carl Christensen)
|
||
|
||
html/
|
||
inc/
|
||
userw.inc
|
||
wap.inc
|
||
user/
|
||
userw.php
|
||
ops/
|
||
opsw.php
|
||
userw.php
|
||
|
||
David 9 Sept 2004
|
||
- In transitioner, count RESULT_OUTCOME_VALIDATE_ERROR as an error
|
||
|
||
sched/
|
||
transitioner.C
|
||
|
||
David 9 Sept 2004
|
||
- preliminary support for "locality scheduling" (for Einstein@home).
|
||
|
||
client/
|
||
client_types.h
|
||
sc_scheduler.C
|
||
sched/
|
||
sched_send.C,h
|
||
server_types.h
|
||
|
||
David 10 Sept 2004
|
||
- compile fix for Win
|
||
|
||
lib/
|
||
util.C
|
||
|
||
David 10 Sept 2004
|
||
- validator: slight change to check_set() and check_pair():
|
||
they no longer should update result records in case of
|
||
nonrecoverable error.
|
||
Just set the outcome to RESULT_OUTCOME_VALIDATE_ERROR,
|
||
and the framework program will do the updates.
|
||
|
||
sched/
|
||
validator.C
|
||
|
||
David 10 Sept 2004
|
||
- more changes for locality scheduling
|
||
|
||
client/
|
||
client_state.C
|
||
client_types.C
|
||
cs_scheduler.C
|
||
sched/
|
||
Makefile.am
|
||
sched_config.C,h
|
||
sched_locality.h (new)
|
||
sched_send.C
|
||
server_types.C,h
|
||
|
||
Rom 10 Sept 2004
|
||
- NEw GUI: Put the glue back in so that we can make the various tabs work.
|
||
|
||
clientgui/
|
||
MainDocument.cpp, .h
|
||
stdwx.h
|
||
|
||
|
||
Lana 26 August 2004
|
||
- Installation script provides better default daemons by starting
|
||
transitioner, feeder and file deleter deamons automatically
|
||
|
||
tools/
|
||
make_project
|
||
|
||
Lana 11 Sept 2004
|
||
- Created DB Purger that archives "DONE" workunits and their
|
||
results into XML archive files. Deletes those records from the database.
|
||
Added delete_from_db function to DB_BASE
|
||
|
||
sched/
|
||
db_purge.C
|
||
|
||
db/
|
||
db_base.h
|
||
db_base.C
|
||
|
||
|
||
David 12 Sept 2004
|
||
- Added a queueing mechanism for shared-memory message passing,
|
||
class MSG_QUEUE.
|
||
This provides reliable, ordered message delivery.
|
||
I think process-control messages were being lost in some cases.
|
||
- Replaced ad-hoc 1-level queueing mechanism for graphics requests
|
||
- Changed the logic for selecting app for screensaver a bit;
|
||
have new field bool ACTIVE_TASK::is_ss_app that keeps track
|
||
of which app is acting as the screensaver.
|
||
This fixes bugs in a few particular cases.
|
||
|
||
client/
|
||
app.C,h
|
||
app_control.C
|
||
app_graphics.C
|
||
cs_apps.C
|
||
ss_logic.C
|
||
lib/
|
||
app_ipc.h
|
||
|
||
David 13 Sept 2004
|
||
- Preliminary checkin for "GUI URLs" feature
|
||
(allows projects to send URLs to be use as links in GUIs)
|
||
This is implemented in a new class GUI_URLS.
|
||
Its init() member reads template file.
|
||
Its get_gui_urls() member macro-substitutes user/team/host IDs
|
||
into the URLs, and produces XML to be included in scheduler replies.
|
||
- renamed replace_element() to replace_element_contents()
|
||
- moved try_fopen() from lib/util.C to sched/sched_util.C
|
||
- added old and new docs to CVS
|
||
|
||
doc/ (all new)
|
||
sched_locality.php
|
||
client_mac.php
|
||
delete_file.php
|
||
get_file.php
|
||
get_file_list.php
|
||
gui_rpc_control.php
|
||
gui_urls.php
|
||
info.php
|
||
send_file.php
|
||
lib/
|
||
parse.C,h
|
||
util.C,h
|
||
sched/
|
||
handle_request.C
|
||
main.C,h
|
||
make_work.C
|
||
sched_locality.C
|
||
sched_util.C,h
|
||
server_types.C,h
|
||
|
||
David 13 Sept 2004
|
||
- When email account ID, show (on the next web page) the "from"
|
||
address of the email,
|
||
since some users may have email filters based on sender.
|
||
The "from" address is the constant EMAIL_FROM,
|
||
which should be defined in project.inc.
|
||
If this is missing, it uses URL_BASE
|
||
(which is not an email address, so projects should define EMAIL_FROM)
|
||
|
||
html/
|
||
inc/
|
||
util.inc
|
||
user/
|
||
account_created.php
|
||
mail_passwd.php
|
||
|
||
David 13 Sept 2004
|
||
- small changes to screensaver logic, try to fix Rom's 2-CPU bug
|
||
|
||
client/
|
||
app_graphics.C
|
||
ss_logic.C
|
||
|
||
|
||
David 13 Sept 2004
|
||
- Change CPU scheduling logic so that the min debt is subtracted
|
||
from the debt of all active projects.
|
||
i.e. debt is normalized to be zero-based.
|
||
This fixes a bug where the debt of projects with work
|
||
keeps getting bigger and bigger,
|
||
so that when a new project is attached or gets work,
|
||
it takes a long time for it to run.
|
||
|
||
client/
|
||
cs_apps.C
|
||
|
||
Rom 14 Sept 2004
|
||
- GUIRPC: Remove memory leaks from the client-side GUI RPC's.
|
||
- GUIRPC: Make the API contracts consistant.
|
||
|
||
clientgui/
|
||
MainFrame.h
|
||
lib/
|
||
gui_rpc_client.C, .h
|
||
|
||
David 14 Sept 2004
|
||
- added a "project status" page showing daemon and DB status
|
||
The sample has various SETI@home-specific stuff;
|
||
projects will need to customize it.
|
||
- added db_init_aux(), which doesn't check stop_web,
|
||
generate HTML or exit;
|
||
moved db_init() to util.inc; it calls db_init_aux(),
|
||
and does the check/HTML/exit stuff
|
||
|
||
html/
|
||
inc/
|
||
db.inc
|
||
util.inc
|
||
user/
|
||
sample_status.php (new)
|
||
|
||
David 14 Sept 2004
|
||
fixes to forum code (from Janus K.):
|
||
|
||
- Intelligently scale the avatar instead of stretching it.
|
||
(keep largest portion of the image within the 100x100
|
||
view while keeping image proportions)
|
||
- show preview of the avatar in forum prefs
|
||
- Inform users of the maximum signature size in forum prefs
|
||
|
||
html/
|
||
inc/
|
||
util.inc
|
||
user/
|
||
edit_forum_preferences_action.php
|
||
edit_forum_preferences_form.php
|
||
|
||
David 14 Sept 2004
|
||
- fix bug in update_versions
|
||
|
||
tools/
|
||
update_versions
|
||
|
||
Rom 14 Sep 2004 (boinc_public)
|
||
- Tag for 4.09 release, all platforms
|
||
boinc_core_release_4_09
|
||
|
||
Lana 14 Sep 2004
|
||
- added cpu_scheduling to global preferences
|
||
|
||
html/inc/
|
||
prefs.inc
|
||
|
||
David 18 Sept 2004
|
||
- fixed "used before assigned" errors in whetstone.
|
||
|
||
client/
|
||
whetstone.C
|
||
|
||
David 20 Sept 2004
|
||
- changed PHP caching code to touch file before regenerating it.
|
||
This will (in most cases) prevent concurrent processes
|
||
from redundantly regenerating it.
|
||
- Change "cpu_scheduling" to "cpu_scheduling_period_minutes"
|
||
in global preferences
|
||
|
||
html/inc/
|
||
cache.inc
|
||
prefs.inc
|
||
|
||
David 20 Sept 2004
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
user/
|
||
edit_forum_preferences_action.php
|
||
show_user.php
|
||
|
||
Lana 20 Sept 2004
|
||
- Fixed create_work bug. Copy input text files to the download directories
|
||
|
||
tools/
|
||
backend_lib.C
|
||
|
||
Rom 20 Sept 2004
|
||
- NEWGUI: Refactor all view logic to accommodate
|
||
the new task based interface.
|
||
- NEWGUI: Add the new projects task pane.
|
||
- NEWGUI: Stub the other tabs.
|
||
- NEWGUI: Include new visuals for the task based UI.
|
||
|
||
clientgui/
|
||
<Numerous Files Have Been Changed>
|
||
|
||
David 21 Sept 2004
|
||
- fixed profile image upload (from Matt)
|
||
|
||
html/inc/
|
||
profile.inc
|
||
|
||
Lana 21 Sept 2004
|
||
- added getting value of the cpu_sched_period
|
||
for the client from the global prefs
|
||
|
||
client/
|
||
prefs.h
|
||
prefs.C
|
||
|
||
David 21 Sept 2004
|
||
- parse_state_file():
|
||
If client_state.xml doesn't exist, try client_state_next.xml.
|
||
If the resulting file is empty, try client_state_prev.xml
|
||
This should hopefully fix cases of state file corruption on crash
|
||
- change request delay from 1 hour to 1 day for:
|
||
- unknown platform
|
||
- no work for this platform
|
||
- core client out of date
|
||
|
||
client/
|
||
cs_statefile.C
|
||
sched/
|
||
handle_request.C
|
||
sched_send.C
|
||
|
||
David 22 Sept 2004
|
||
Various cleanups; first try on project-overwrite bug
|
||
(I don't think these have anything to do with it, however).
|
||
Client now compiles with gcc -Wall -W -Werror
|
||
|
||
- enforce buffer length arg in copy_element_contents()
|
||
- check return values from copy_element_contents() everywhere
|
||
- check return value from PROJECT::parse_account()
|
||
and PROJECT::write_account_file()
|
||
- remove unused arguments here and there
|
||
|
||
|
||
client/
|
||
app.h
|
||
app_control.C
|
||
client_state.C,h
|
||
client_types.C
|
||
cs_account.C
|
||
cs_apps.C
|
||
cs_scheduler.C
|
||
cs_statefile.C
|
||
dhrystone.C
|
||
gui_rpc_server.C
|
||
main.C
|
||
net_stats.C,h
|
||
net_xfer.C,h
|
||
scheduler_op.C
|
||
lib/
|
||
miofile.C
|
||
parse.C
|
||
|
||
Rom 22 Sept 2004
|
||
- NEWGUI: Add rules to enforce URL and Accout Key rules to the
|
||
attach to project dialog, this will increase the robustness
|
||
of the new UI when dealing with unexpected input.
|
||
- Cleanup the rest of the graphics stuff.
|
||
|
||
clientgui/
|
||
<various files>
|
||
|
||
David 22 Sept 2004
|
||
- store scheduler requests and replies in files whose names
|
||
include the project master URL.
|
||
This will hopefully prevent RPCs from clobbering each other.
|
||
The question of why concurrent RPC is happening is unresolved.
|
||
- rename next_project() to next_project_need_work()
|
||
- remove redundant time argument from SCHEDULER_OP::init_return_results()
|
||
|
||
client/
|
||
client_state.h
|
||
cs_scheduler.C
|
||
file_names.C,h
|
||
scheduler_op.C,h
|
||
|
||
|
||
David 22 Sept 2004
|
||
- commented out PROJECT::share_size and PROJECT::size.
|
||
|
||
client/
|
||
client_state.C
|
||
client_types.C,h
|
||
|
||
Lana 22 Sept 2004
|
||
- included MD5 Checksum in the Core Client download page
|
||
|
||
html/
|
||
inc/
|
||
util.inc
|
||
download.inc
|
||
|
||
Rom 22 Sept 2004
|
||
- Fix CPU Scheduler bug on a multi-proc machine after a project reset where
|
||
the core client gets stuck in a loop trying to schedule work that does
|
||
not exist.
|
||
|
||
client/
|
||
client_state.h
|
||
cs_apps.C
|
||
|
||
Lana 22 Sept 2004
|
||
- fixed opening of the ops page
|
||
|
||
html/
|
||
inc/
|
||
util_ops.inc
|
||
db_ops.inc
|
||
|
||
Rom 22 Sept 2004
|
||
- NEWGUI: Make the quick tips section auto update with the quick tip for the
|
||
item the mouse is hovering over.
|
||
|
||
clientgui/
|
||
<various files>
|
||
|
||
David 23 Sept 2004
|
||
- fix bug in schedule_cpus() that caused it to not reschedule
|
||
when a result is done.
|
||
Removed its "must_reschedule" argument.
|
||
Add a boolean CLIENT_STATE::must_reschedule_cpus
|
||
that is set whenever a result is newly runnable or done,
|
||
and that tells schedule_cpus() to do its thang regardless of time.
|
||
|
||
client/
|
||
app_control.C
|
||
client_state.C,h
|
||
cs_apps.C
|
||
|
||
David 23 Sept 2004
|
||
- fix (from Frank Weiler) for GUI column sorting problem
|
||
|
||
client/
|
||
gui_titles.C,h
|
||
win/
|
||
wingui_listctrl.cpp,h
|
||
wingui_mainwindow.cpp
|
||
|
||
David 23 Sept 2004
|
||
- Added code (from Ben Herndon) for getting X86 CPU names and models better.
|
||
Not using this for now.
|
||
|
||
client/win/
|
||
cpuid_tbl.cpp,h
|
||
opt_x86.h
|
||
opt_x86cpu.cpp
|
||
optBench.hpp
|
||
optimize.hpp
|
||
|
||
Lana 23 Sept 2004
|
||
- Fixed setting of the default venue on account setup.
|
||
|
||
html/user/
|
||
account_setup_nonfirst_action.php
|
||
|
||
David 23 Sept 2004
|
||
- to simplify things, removed a number of fields from SCHEDULER_REPLY
|
||
and have SCHEDULER_REPLY::parse() copy info straight into the PROJECT.
|
||
This eliminates a bunch of pointless copying
|
||
- added bool PROJECT::non_cpu_intensive
|
||
- commented out deletion_policy stuff
|
||
|
||
client/
|
||
client_types.C,h
|
||
cs_scheduler.C
|
||
scheduler_op.C,h
|
||
|
||
Lana 23 Sept 2004
|
||
- refactored access and storage to cpu_sched_period for the project.
|
||
now it is being maintained in global prefs only.
|
||
|
||
client/
|
||
cs_statefile.C
|
||
cs_apps.C
|
||
client_state.C,h
|
||
|
||
David 24 Sept 2004
|
||
- Scheduler: send a message to client (low priority)
|
||
if there is a newer minor version of the core client available.
|
||
This required adding the set of CORE_VERSIONs to shared mem
|
||
|
||
sched/
|
||
handle_request.C
|
||
sched_config.C,h
|
||
sched_shmem.C,h
|
||
|
||
David 24 Sept 2004
|
||
- db_dump: use mysql_use_result() instead of mysql_store_result()
|
||
for the enumeration of users.
|
||
Otherwise it has to store the entire result set in memory,
|
||
which could be prohibitive.
|
||
NOTE: still have to use mysql_store_result() for hosts
|
||
because of the user lookup to get show_hosts flag.
|
||
Could deal with this by doing a join.
|
||
- added use_use_result arg to DB_BASE::enumerate() (default false)
|
||
- change printfs to log_messages.printf in db_dump
|
||
- db_dump: don't show user host list
|
||
(can't do this if use mysql_use_result())
|
||
|
||
db/
|
||
db_base.C,h
|
||
sched/
|
||
db_dump.C
|
||
|
||
David 24 Sept 2004
|
||
- use lockf() in preference to flock(), since the former supports NFS
|
||
(from James Drews)
|
||
|
||
lib/
|
||
filesys.C
|
||
|
||
David 24 Sept 2004
|
||
- added a <dont_generate_upload_certificates/> option to config.xml.
|
||
If set, no upload certificates will be generated for results.
|
||
This will make the transitioner run faster.
|
||
If you use this, you must set <ignore_upload_certificates/>
|
||
immediately, and leave it on for a couple of weeks
|
||
even after start generating upload certificates again.
|
||
|
||
sched/
|
||
sched_config.C,h
|
||
transitioner.C
|
||
tools/
|
||
backend_lib.C,h
|
||
process_result_template.C
|
||
|
||
Rom 24 Sept 2004
|
||
- NEWGUI: Hook up the rest of the html panes for the transfers,
|
||
messages, work, and resources tabs.
|
||
- Kick start the CPU scheduler on startup by setting must_reschedule_cpus
|
||
in case the scheduler is stuck in a funky state.
|
||
|
||
client/
|
||
client_state.C
|
||
clientgui/
|
||
<Numerous Files>
|
||
|
||
David 24 Sept 2004
|
||
- support for <non_cpu_intensive/> projects.
|
||
The flag is parsed from scheduler and stored in state file
|
||
Non-CPU-intensive projects are treated specially
|
||
by the CPU scheduler: their results are always scheduled.
|
||
|
||
client/
|
||
client_state.C,h
|
||
client_types.C
|
||
cs_apps.C
|
||
|
||
David 25 Sept 2004
|
||
- Made GUI RPC client code a bit nicer by adding RPC class
|
||
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
gui_test.C
|
||
|
||
David 25 Sept 2004
|
||
- Added new GUI RPCs:
|
||
project: suspend/resume
|
||
file transfer: abort
|
||
active task: suspend/resume/abort
|
||
get proxy info
|
||
- Modified the C++ interface to GUI RPC a little
|
||
NOTE: the RPCs themselves (XML on the wire) are unchanged
|
||
- Added suspended_via_gui flags to PROJECT, ACTIVE_TASK
|
||
- renamed CLIENT_STATE::pi to CLIENT_STATE::proxy_info
|
||
|
||
client/
|
||
app.C,h
|
||
client_state.C,h
|
||
client_types.C,h
|
||
cs_apps.C
|
||
cs_cmdline.C
|
||
cs_statefile.C
|
||
gui_rpc_server.C
|
||
pers_file_xfer.C,h
|
||
scheduler_op.C
|
||
win/
|
||
wingui_proxydlg.cpp
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
gui_test.C
|
||
|
||
David 26 Sept 2004
|
||
- Added the ability to turn homogeneous redundancy on/off
|
||
on a per-application basis.
|
||
|
||
NOTE: this involved adding a homogeneous_redundancy field to
|
||
the app table in the database.
|
||
To upgrade to this server software,
|
||
you must run the SQL query in html/ops/db_update.php,
|
||
which adds this database field.
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
schema.sql
|
||
html/
|
||
inc/
|
||
db_ops.inc
|
||
ops/
|
||
db_update.php
|
||
py/Boinc/
|
||
database.py
|
||
sched/
|
||
db_dump.C
|
||
sched_send.C
|
||
|
||
Rom 27 Sep 2004 (boinc_public)
|
||
- Tag for 4.10 release, all platforms
|
||
boinc_core_release_4_10
|
||
|
||
David 27 Sept 2004
|
||
- more support for GUI URLs.
|
||
The core client should now parse them from scheduler reply,
|
||
and save them in account file.
|
||
|
||
client/
|
||
client_types.C,h
|
||
scheduler_op.C
|
||
lib/
|
||
parse.C,h
|
||
sched/
|
||
handle_request.C
|
||
server_types.C,h
|
||
|
||
David 27 Sept 2004
|
||
- still more GUI URL changes
|
||
|
||
client/
|
||
client_types.C
|
||
scheduler_op.C
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
|
||
David 28 Sept 2004
|
||
- fixed CPU sched bug, I hope
|
||
|
||
client/
|
||
client_state.C
|
||
cs_data.C
|
||
|
||
David 28 Sept 2004
|
||
- parse message seqnos in GUI RPC client
|
||
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
|
||
Rom 28 Sep 2004 (boinc_public)
|
||
- Tag for 4.11 release, all platforms
|
||
boinc_core_release_4_11
|
||
|
||
Jeff 28 Sep 2004
|
||
- reduced limit on feeder enumeration query from 10,000 to 1,000.
|
||
|
||
sched/
|
||
feeder.C
|
||
|
||
David 29 Sept 2004
|
||
- handle GUI RPCs even if we're running benchmarks
|
||
- report PROJECT::suspended_via_gui in RPC reply
|
||
|
||
client/
|
||
client_state.C
|
||
client_types.C
|
||
gui_rpc_server.C
|
||
|
||
David 30 Sept 2004
|
||
- added -db_host option to db_dump (so it can use a DB replica)
|
||
|
||
sched/
|
||
db_dump.C
|
||
|
||
David 30 Sept 2004
|
||
- Change wording of some web links
|
||
|
||
html/
|
||
inc/
|
||
user.inc
|
||
util.inc
|
||
user/
|
||
mail_passwd.php
|
||
|
||
David 30 Sept 2004
|
||
- got clientgui working on Linux!!
|
||
|
||
clientgui/
|
||
MainDocument.cpp
|
||
Makefile (new)
|
||
ValidateURL.cpp
|
||
|
||
David 30 Sept 2004
|
||
- changed the semantics of the GUI RPC get_messages() call.
|
||
- It no longer takes an "nmessages" arg.
|
||
- it returns messages in order of increasing seqno
|
||
- changed message_descs from a std::list to a std::deque
|
||
|
||
client/
|
||
client_msgs.C,h
|
||
gui_rpc_server.C
|
||
lib/
|
||
boinc_win.h
|
||
gui_rpc_client.C,h
|
||
gui_test.C
|
||
win_build/
|
||
boinc_guirpc_test.vcproj
|
||
|
||
David 30 Sept 2004
|
||
- added GUI_RPC_CLIENT::close() function.
|
||
Call this if any RPC returns ERR_READ or ERR_WRITE.
|
||
Then call init() again to reconnect
|
||
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
|
||
David 30 Sept 2004
|
||
- fix crashing bug in get_messages GUI RPC (signed/unsigned issue)
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
|
||
David 30 Sept 2004
|
||
- First steps in fixing the venue mess:
|
||
venue is passed from server to client, never the other way.
|
||
- always pass back host credit info in sched reply
|
||
(not just if new hostid - how did that happen??)
|
||
- add none (---) as an option for venue in web form
|
||
- when user change venue of host, tell them that it
|
||
will take effect only after a sched request
|
||
|
||
html/
|
||
inc/
|
||
host.inc
|
||
user/
|
||
host_venue_action.php
|
||
sched/
|
||
handle_request.C
|
||
server_types.C,h
|
||
|
||
David 1 Oct 2004
|
||
- Ending the venue debacle, part II: The Client
|
||
|
||
1) Each project maintains its venue separately.
|
||
It's stored in the project's account file,
|
||
and is used to select the project prefs variant.
|
||
|
||
2) Let P be the project that's the source of the global prefs.
|
||
Then P's venue is used to select the global prefs variant.
|
||
(Note: P's venue may change without the global prefs changing).
|
||
This venue is stored in the CLIENT_STATE.main_host_venue
|
||
and in the client state file; it survives even if P is detached.
|
||
|
||
So the basic logic is:
|
||
if you get a new venue from project P,
|
||
re-parse its project prefs.
|
||
If in addition P is the source of the global prefs,
|
||
re-parse the global prefs and put the venue in CLIENT_STATE.main_host_venue
|
||
- got rid of CLIENT_STATE::parse_venue()
|
||
- don't send host_venue in scheduler request
|
||
|
||
client/
|
||
client_state.C,h
|
||
client_types.C,h
|
||
cs_account.C
|
||
cs_prefs.C
|
||
cs_scheduler.C
|
||
cs_statefile.C
|
||
scheduler_op.C
|
||
|
||
David 1 Oct 2004
|
||
- Bug fix for venue propagation
|
||
- Moved some account-file-related code to cs_account.C,
|
||
some prefs-related code to cs_prefs.C
|
||
client/
|
||
client_types.C
|
||
cs_account.C
|
||
cs_prefs.C
|
||
cs_scheduler.C
|
||
|
||
David 1 Oct 2004
|
||
- CLIENT_STATE::avg_proc_rate: include on_frac in the formula
|
||
(from Ben Herndon)
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
time_stats.h
|
||
sched/
|
||
server_types.h
|
||
|
||
David 1 Oct 2004
|
||
- "default", nor "primary", prefs
|
||
|
||
client/
|
||
cs_account.C
|
||
|
||
David 1 Oct 2004
|
||
- web: add "as of May 14 2004" when show SETI@home classic stats
|
||
- fix bug in db_dump.C (wasn't checking for -d)
|
||
|
||
html/inc/
|
||
user.inc
|
||
sched/
|
||
db_dump.C
|
||
|
||
David 4 Oct 2004
|
||
- Win GUI: don't show error box if WinsockCleanup() fails
|
||
(in CMyApp::ExitInstance())
|
||
|
||
client/win/
|
||
wingui_mainwindow.cpp
|
||
|
||
David 4 Oct 2004
|
||
- web site fixes (forums) from Janus K
|
||
|
||
html/user/
|
||
edit_forum_preferences_action.php
|
||
home.php
|
||
|
||
David 4 Oct 2004
|
||
- fix typos and compile errors
|
||
|
||
db/
|
||
boinc_db.C
|
||
db_base.h
|
||
client/
|
||
cs_scheduler.C
|
||
|
||
David 4 Oct 2004
|
||
- changed DB code to allow for the use of read-only DB replicas
|
||
Here's what you can do now:
|
||
|
||
DB_CONN replica;
|
||
replica.open(name, host, user, passwd);
|
||
DB_USER user(replica);
|
||
user.enumerate(...)
|
||
|
||
... and this can be intermixed with access to the master DB (boinc_db).
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
db_base.C,h
|
||
|
||
Lana 4 Oct 2004
|
||
- changed most of the update() statements to update_field() statements
|
||
to improve server performance
|
||
|
||
sched/
|
||
assimilator.C
|
||
feeder.C
|
||
file_deleter.C
|
||
update_stats.C
|
||
validator.C
|
||
wu_check.C
|
||
|
||
David 6 Oct 2004
|
||
- Added some new items to the APP_INIT_DATA struct
|
||
(and to the init_data.xml file):
|
||
- global preferences
|
||
- user/team/host IDs
|
||
- proxy info
|
||
|
||
This is for the benefit of Folding@home,
|
||
whose application does some core-client-type stuff
|
||
(e.g. network communication) and therefore needs this info
|
||
|
||
- changed GLOBAL_PREFS::source_project and source_scheduler
|
||
from std::string to char[256]
|
||
|
||
- factored out PROXY_INFO code into lib/proxy_info.C,h
|
||
- moved GLOBAL_PREFS code from client/ to lib/
|
||
|
||
client/
|
||
app_start.C
|
||
client_state.C
|
||
cs_prefs.C
|
||
cs_scheduler.C
|
||
prefs.C,h (moved to lib)
|
||
proxy.C,h
|
||
lib/
|
||
app_ipc.C,h
|
||
prefs.C,h (moved from client)
|
||
proxy_info.C,h (new)
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
boinc_gui.vcproj
|
||
upper_case.vcproj
|
||
|
||
David 6 Oct 2004
|
||
- file upload handler was doing too many checks
|
||
in the ignore_upload_certificates case
|
||
|
||
sched/
|
||
file_upload_handler.C
|
||
|
||
David 6 Oct 2004
|
||
- Compile fixes.
|
||
|
||
NOTE: on UNIX, it seems to be necessary to remove everything
|
||
from client/.deps before compiling,
|
||
else you get errors trying to compile prefs.C (which got moved)
|
||
Shouldn't something do this automatically?
|
||
|
||
|
||
client/
|
||
Makefile.am
|
||
lib/
|
||
Makefile.am
|
||
proxy_info.h
|
||
|
||
David 6 Oct 2004
|
||
- Added files (from Kenichi Miyoshi of NTT) to support
|
||
SSL (secure socket layer) communication.
|
||
These require an SSL library to use,
|
||
so I haven't put these files into the project.
|
||
Directions for using them are in
|
||
doc/ssl_build.txt
|
||
|
||
client/
|
||
ssl_http.C,h
|
||
ssl_net_xfer.C,h
|
||
|
||
David 6 Oct 2004
|
||
- the key generation function of crypt_prog now uses /dev/random
|
||
instead of getting random seed based on time
|
||
|
||
lib/
|
||
crypt_prog.C
|
||
|
||
David 6 Oct 2004
|
||
- boinc_resolve_filename() fix bug where link file is empty
|
||
(from Markku Degerholm)
|
||
|
||
lib/
|
||
app_ipc.C
|
||
|
||
David 7 Oct 2004
|
||
- return formatted msg in file_upload_handler
|
||
|
||
sched/
|
||
file_upload_handler.C
|
||
|
||
David 7 Oct 2004
|
||
- Housecleaning of result_report_error() and related code:
|
||
- removed RESULT::active_task_state field
|
||
- removed RESULT::signal field
|
||
- removed "errnum" argument from result_report_error()
|
||
- return XML text for upload errors
|
||
- clean up logic of result_report_error()
|
||
- changed FILE_INFO::had_failure() to optionally return error text
|
||
- changed RESULT_COMPUTE_DONE to RESULT_COMPUTE_ERROR
|
||
- renamed APP_VERSION::had_failure() to had_download_failure()
|
||
(same work WORKUNIT)
|
||
- schedule_cpus(): if any start or resume fails,
|
||
set must_schedule_cpus so we'll try something else
|
||
|
||
client/
|
||
app_control.C
|
||
app_start.C
|
||
client_state.C,h
|
||
client_types.C,h
|
||
cs_apps.C
|
||
cs_scheduler.C
|
||
cs_statefile.C
|
||
lib/
|
||
prefs.C
|
||
result_state.h
|
||
|
||
David 7 Oct 2004
|
||
- Python DB code: don't treat a field as an external ID if
|
||
it ends with "_id" (like "seti_id")
|
||
|
||
py/Boinc/
|
||
db_base.py
|
||
|
||
David 8 Oct 2004
|
||
- Add confirm before delete prefs
|
||
|
||
html/user/
|
||
prefs_remove.php
|
||
|
||
David 8 Oct 2004
|
||
- GLOBAL_PREFS::parse(): don't erase source project/scheduler info
|
||
when parse venue-specific prefs
|
||
- compile fix for windows
|
||
|
||
client/win/
|
||
wingui_mainwindow.cpp
|
||
lib/
|
||
prefs.C
|
||
|
||
Lana 8 Oct 2004
|
||
- changed check_set() to take input WORKUNIT instead of DB_WORKUNIT
|
||
- added VALIDATOR_ITEM and DB_VALIDATOR_ITEM_SET
|
||
- optimized validator to use DB_VALIDATOR_ITEM_SET
|
||
|
||
db/
|
||
boinc_db.C, .h
|
||
sched/
|
||
validator.C
|
||
sample_bitwise_validator.C
|
||
sample_trivial_validator.C
|
||
|
||
David 9 Oct 2004
|
||
- forum updates (from Janus Kristensen)
|
||
|
||
NOTE: to use this new code you'll have to update
|
||
your database (see html/ops/db_update.php)
|
||
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
forum_show.inc
|
||
util.inc
|
||
ops/
|
||
db_update.php
|
||
user/
|
||
edit_forum_preferences_action.php
|
||
edit_forum_preferences_form.php
|
||
forum_post.php
|
||
forum_reply.php
|
||
forum_thread.php
|
||
unread_post.png (new)
|
||
|
||
David 9 Oct 2004
|
||
- added script to cancel a WU
|
||
|
||
html/ops/
|
||
cancel_wu.php (new)
|
||
|
||
David 9 Oct 2004
|
||
- finished changes to validator to user DB_VALIDATOR_ITEM_SET
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
sched/
|
||
assimilator.C
|
||
db_purge.C
|
||
validator.C
|
||
|
||
David 9 Oct 2004
|
||
- When parsing a FILE_INFO, always copy the XML to "signed_xml".
|
||
Otherwise, when the core client tries to upload the file,
|
||
it sends an empty <file_info> element.
|
||
|
||
This fixes a problem in which all uploads fail if a project
|
||
uses the <dont_generate_upload_certificates/> config option
|
||
|
||
client/
|
||
client_types.C,h
|
||
|
||
|
||
David 10 Oct 2004
|
||
- GUI RPC fixes from Sebastian Masch
|
||
|
||
client/
|
||
client_types.C
|
||
gui_rpc_server.C
|
||
|
||
David 11 Oct 2004
|
||
- changed the graphics API to support Mac OS/X
|
||
(in which only the original thread can do GUI stuff).
|
||
boinc_init_graphics() now takes a function-pointer arg
|
||
for the worker function; it runs this function in a new thread,
|
||
and the calling thread does the GUI event loop.
|
||
|
||
Did this for Windows, and attempted to make the same changes
|
||
in the Mac and X11 code. May or may not work.
|
||
|
||
- got rid of everything related to the GRAPHICS_INFO structure.
|
||
This wasn't being used.
|
||
|
||
NOTE: this change doesn't affect the core/app interface.
|
||
No need to recompile existing apps.
|
||
|
||
api/
|
||
graphics_api.C,h
|
||
windows_opengl.C
|
||
client/
|
||
app_start.C
|
||
lib/
|
||
app_ipc.C,h
|
||
prefs.C
|
||
|
||
David 11 Oct 2004
|
||
- added <get_host_info/> GUI RPC
|
||
- put extern "C" around filesys.C functions
|
||
(so can use from C apps)
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
lib/
|
||
filesys.h
|
||
gui_rpc_client.C,h
|
||
util.h
|
||
|
||
David 12 Oct 2004
|
||
- fixes to forum code (from Janus)
|
||
- finished checkin of 9 Oct (forgot db_update.php)
|
||
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
ops/
|
||
db_update.php
|
||
user/
|
||
edit_forum_preferences_action.php
|
||
edit_forum_preferences_form.php
|
||
|
||
David 12 Oct 2004
|
||
- API: more detailed message when do heartbeat giveup
|
||
- remove CLIENT_STATE::previous_activities_suspended
|
||
- changed work fetch policy to get T work, not 2T
|
||
- don't handle SIGTSTP and SIGCONT
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
client_state.C,h
|
||
cs_scheduler.C
|
||
main.C
|
||
win/
|
||
wingui_mainwindow.cpp
|
||
|
||
David 13 Oct 2004
|
||
- in global prefs XML, if cpu_scheduling_period_minutes is empty,
|
||
set it to 60 (this caused core client to hang in some situations)
|
||
- renamed PREFS::cpu_sched_period to cpu_scheduling_period_minutes
|
||
(matching what it's called in the XML)
|
||
|
||
client/
|
||
cs_apps.C
|
||
lib/
|
||
prefs.C,h
|
||
|
||
David 13 Oct 2004
|
||
- initial cleanup of x_opengl.C
|
||
(e.g. use a timer instead of onIdle)
|
||
|
||
api/
|
||
x_opengl.C
|
||
|
||
Lana 13 Oct 2004
|
||
- cleanup of boinc validator to handle error conditions
|
||
|
||
sched/
|
||
validator.C
|
||
|
||
David 13 Oct 2004
|
||
- Get app graphics working in Linux
|
||
|
||
api/
|
||
graphics_api.C
|
||
gutil.h
|
||
reduce.C
|
||
x_opengl.C,h
|
||
apps/
|
||
Makefile.am
|
||
|
||
David 13 Oct 2004
|
||
- upload handler: return error msg to client if can't open log file
|
||
|
||
sched/
|
||
file_upload_handler.C
|
||
|
||
David 14 Oct 2004
|
||
- Core client: change the poll paradigm a little
|
||
OLD: all the poll functions get called,
|
||
at least once a second or more often when there's activity,
|
||
e.g. network traffic.
|
||
The problem: some of the poll functions (e.g. garbage collect)
|
||
do a lot of work, and in periods of network activity
|
||
they get called hundreds of times/sec.
|
||
NEW: all poll functions take a "double now" argument.
|
||
Those that only need to run every second can
|
||
keep track of the last time called, and return false
|
||
if not enough time has gone by
|
||
- Clarify meaning of TIME_STATS::active_frac:
|
||
it is the fraction of total time
|
||
(NOT time that core client is running)
|
||
that core client is enabled to work
|
||
- CLIENT_STATE::compute_work_requests():
|
||
Don't divide by active_frac in computing work request;
|
||
the scheduler already does this!!
|
||
- Core client: don't use time_t for times. Use double.
|
||
- garbage collect: delete an unused FILE_INFO even if
|
||
it has an active PERS_FILE_XFER.
|
||
(Delete the PERS_FILE_XFER first.)
|
||
- API: fix crashing bug if app_init_data.xml file isn't there
|
||
- Graphics API, X version: wait for initial message
|
||
before doing anything (since GLUT needs a window)
|
||
- scheduler: fix small error in WU wallclock estimate
|
||
|
||
api/
|
||
boinc_api.C
|
||
x_opengl.C
|
||
client/
|
||
app.C,h
|
||
client_state.C,h
|
||
client_types.C
|
||
cs_apps.C
|
||
cs_files.C
|
||
cs_scheduler.C
|
||
file_xfer.C,h
|
||
gui_rpc_server.C,h
|
||
http.C,h
|
||
main.C
|
||
net_xfer.C,h
|
||
scheduler_op.C
|
||
time_stats.h
|
||
win/
|
||
wingui_mainwindow.cpp
|
||
lib/
|
||
app_ipc.C,h
|
||
makefile.gui_test
|
||
sched/
|
||
sched_send.C
|
||
|
||
Lana 14 Oct 2004
|
||
- improved db_purge to output to multiple archives
|
||
|
||
sched/
|
||
db_purge.C
|
||
|
||
David 15 Oct 2004
|
||
- GUI RPC: don't crash if bad project URL
|
||
- SCHEDULER_REPLY::parse(): tolerate extra lines
|
||
at start of scheduler reply (from Volker Hatzenberger)
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
scheduler_op.C
|
||
|
||
David 15 Oct 2004
|
||
- don't finalize WinSock unless we inited it successfully
|
||
|
||
client/win/
|
||
wingui_mainwindow.cpp
|
||
|
||
Lana 15 Oct 2004
|
||
- fixed bug in transitioner marking validate state as NO CHECK
|
||
for the workunits with the number of results exceeding max total
|
||
results
|
||
|
||
sched/
|
||
transitioner.C
|
||
|
||
David 15 Oct 2004
|
||
- debugged "clone account" feature
|
||
|
||
html/
|
||
inc/
|
||
result.inc
|
||
user.inc
|
||
user/
|
||
account_setup_first.php
|
||
account_setup_nonfirst_action.php
|
||
create_account_action.php
|
||
create_account_form.php
|
||
|
||
David 16 Oct 2004
|
||
- Changed semantics of "clone account" features.
|
||
As it stood, it let anyone see anyone else's project prefs,
|
||
which could be a violation of privacy.
|
||
Changed it to be team-centric:
|
||
team founders (and only them) have visible project prefs
|
||
|
||
html/
|
||
inc/
|
||
team.inc
|
||
user.inc
|
||
user/
|
||
clone.php
|
||
create_account_action.php
|
||
create_account_form.php
|
||
team_join_action.php
|
||
team_join_form.php
|
||
|
||
David 17 Oct 2004
|
||
- Deal with fatal GLUT errors (e.g. can't connect to X server)
|
||
by calling glut_quit() (which exits the pthread)
|
||
rather than exit() or abort() (which exits the app)
|
||
|
||
api/
|
||
graphics_api.C
|
||
boincglut/lib/glut/
|
||
glut_util.C
|
||
README (new)
|
||
|
||
David 17 Oct 2004
|
||
- Fix bug in parsing multi-venue general prefs
|
||
(from Tim Brown)
|
||
|
||
client/
|
||
client_state.C
|
||
lib/
|
||
prefs.C,h
|
||
|
||
David 17 Oct 2004
|
||
- cleanup of Makefile stuff (from Reinhard Prix)
|
||
Got rid of Makefile.in's.
|
||
You now have to run _autosetup ; configure to generate them
|
||
(and the Makefiles)
|
||
|
||
'make install' now installs header files and libs
|
||
under ${prefix}/include and ${prefix}/lib
|
||
|
||
|
||
*Makefile.in (removed)
|
||
*/Makefile.am
|
||
configure (removed)
|
||
sched_fcgi/* (removed)
|
||
|
||
David 18 Oct 2004
|
||
- add web material related to "Team account creation URL";
|
||
warn team founders that their project prefs are public
|
||
|
||
html/
|
||
inc/
|
||
team.inc
|
||
user/
|
||
clone.php
|
||
sample_rss_main.php
|
||
team.php
|
||
|
||
David 18 Oct 2004
|
||
- more Makfile cleanup
|
||
- removed #ifdef HAVE_DIRENT stuff from filesys.h
|
||
so apps can use it
|
||
|
||
Graphics.Readme (removed)
|
||
configure.ac
|
||
boincglut/lib/glut/
|
||
Makefile (removed)
|
||
api/
|
||
Makefile.Readme (removed)
|
||
Makefile.graphics (removed)
|
||
clientgui/
|
||
Makefile (removed)
|
||
lib/
|
||
Makefile.am
|
||
filesys.h
|
||
|
||
David 19 Oct 2004
|
||
- generate clientgui/Makefile
|
||
|
||
Makefile.am
|
||
configure.ac
|
||
|
||
David 19 Oct 2004
|
||
- fix bugs in GUI RPCs
|
||
|
||
client/
|
||
cs_apps.C
|
||
gui_rpc_server.C
|
||
|
||
David 19 Oct 2004
|
||
- fix GUI RPC client so it won't get confused if different
|
||
projects have the same app, WU or result names
|
||
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
makefile.gui_test
|
||
|
||
David 19 Oct 2004
|
||
- if a Unix graphics-capable app is run standalone,
|
||
and it can't connect to X server,
|
||
the graphics thread exits but the worker thread continues.
|
||
|
||
api/
|
||
graphics_api.C
|
||
x_opengl.C
|
||
|
||
David 19 Oct 2004
|
||
- GUI RPC: the get_results and get_file_transfers RPC
|
||
weren't returning the project_url.
|
||
Do this, and parse it on the client side.
|
||
|
||
client/
|
||
client_types.C
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
|
||
David 19 Oct 2004
|
||
- Add <link> to RSS export so Firefox users can bookmark RSS feed
|
||
|
||
html/user/
|
||
sample_rss_main.php
|
||
|
||
David 19 Oct 2004
|
||
- Added GLUT files for new fonts (from Bruce Allen)
|
||
|
||
boincglut/lib/glut/
|
||
Makefile
|
||
glut_bitmap.c
|
||
glut_hel10.c
|
||
glut_hel12.c
|
||
glut_tr10.c
|
||
glut_tr24.c
|
||
|
||
David 19 Oct 2004
|
||
- fixed CPU scheduler bug so that tasks suspended via GUI
|
||
actually are suspended
|
||
|
||
client/
|
||
cs_apps.C
|
||
|
||
David 19 Oct 2004
|
||
- added a -random_order option to the feeder
|
||
(this is inefficient if you don't have an index
|
||
on result.(server_state, random);
|
||
we're using it in the alpha project, where it doesn't matter)
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
sched/
|
||
feeder.C
|
||
|
||
David 19 Oct 2004
|
||
- in error messages from boincglut/ code,
|
||
use BOINCGLUT: prefix instead of GLUT:
|
||
|
||
boincglut/lib/glut/
|
||
glut_util.c
|
||
|
||
David 19 Oct 2004
|
||
- bug fix to RSS feed <link>
|
||
|
||
html/
|
||
inc/
|
||
util.inc
|
||
user/
|
||
clone.php
|
||
sample_index.php
|
||
sample_rss_main.php
|
||
|
||
David 20 Oct 2004
|
||
- added <estimated_cpu_time_remaining> to GUI RPC reply for results
|
||
- fix XML errors in GUI RPC replies (from Gilson Laurent)
|
||
- consolidated logic for estimated remaining CPU time
|
||
(don't do this in GUI)
|
||
|
||
client/
|
||
app.C,h
|
||
client_types.C,h
|
||
cs_apps.C
|
||
cs_scheduler.C
|
||
gui_rpc_server.C
|
||
win/
|
||
wingui_mainwindow.cpp
|
||
|
||
David 20 Oct 2004
|
||
- API: don't delete shared mem in boinc_finish().
|
||
If you do, the graphics thread (which is generally still running)
|
||
may seg fault soon thereafter.
|
||
|
||
api/
|
||
boinc_api.C
|
||
|
||
David 20 Oct 2004
|
||
- API: make the worker thread low priority
|
||
(or at least lower than the graphics thread)
|
||
|
||
NOTE: on UNIX, the core client nices apps to 20.
|
||
Need to rethink this for graphics apps.
|
||
|
||
api/
|
||
graphics_api.C
|
||
|
||
David 20 Oct 2004
|
||
- removed clientgui stuff from build
|
||
|
||
Makefile.am
|
||
configure.ac
|
||
|
||
David 20 Oct 2004
|
||
- Save user_run_request and user_network_request in client_state.xml
|
||
(so always/never/auto settings are persistent)
|
||
- Save PROJECT::suspended_via_gui in client_state.xml
|
||
(so suspend project is persistent)
|
||
- Save ACTIVE_TASK::suspended_via_gui in client_state.xml
|
||
(so suspend task is persistent)
|
||
|
||
client/
|
||
app.C
|
||
client_types.C
|
||
cs_statefile.C
|
||
|
||
David 20 Oct 2004
|
||
- commented out frac_rate_of_change stuff
|
||
(too complicated, not used)
|
||
|
||
client/
|
||
app.C,h
|
||
app_control.C
|
||
|
||
David 20 Oct 2004
|
||
- Graphics API (UNIX) change thread priority the proper way
|
||
(from Bruce Allen)
|
||
|
||
api/
|
||
graphics_api.C
|
||
|
||
David 21 Oct 2004
|
||
- fix to get_file_transfers RPC (from Sebastian Masch)
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
|
||
David 21 Oct 2004
|
||
- fix for result_show_graphics RPC
|
||
|
||
lib/
|
||
gui_rpc_client.C
|
||
|
||
Rom 21 Oct 2004 (boinc)
|
||
- Tag for 4.50 release, all platforms
|
||
boinc_core_release_4_50
|
||
|
||
David 21 Oct 2004
|
||
- compile fixes
|
||
To initialize a char[256], use strcpy(x, ""), not x[0] = NULL.
|
||
|
||
client/
|
||
app_control.C
|
||
clientgui/
|
||
ViewProjects.cpp
|
||
lib/
|
||
gui_rpc_client.C
|
||
|
||
David 21 Oct 2004
|
||
- add "nbytes" (i.e., file size) to FILE_TRANSFER in GUI RPC
|
||
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
|
||
David 21 Oct 2004
|
||
- graphics API (UNIX):
|
||
replace assert(x) by
|
||
if (!x) {
|
||
userclose = 1;
|
||
return;
|
||
}
|
||
the goal is to exit gracefully if there's a graphics problem,
|
||
rather than aborting (and interfering with the computation)
|
||
- get clientgui to compile on Solaris
|
||
|
||
boincglut/
|
||
bglut_event.c
|
||
bglutint.h (removed)
|
||
boinc_glut.h (new)
|
||
glut_cmap.c
|
||
glut_fullscrn.c
|
||
glut_gamemode.c
|
||
glut_win.c
|
||
clientgui/
|
||
Makefile.old
|
||
|
||
David 21 Oct 2004
|
||
- boinc_receive_trickle_down(): reset have_trickle_down
|
||
if don't find any trickle-down messages.
|
||
This will make subsequence checks efficient (i.e. no disk check).
|
||
- boinc_catch_signal(): for SIGHUP and SIGPIPE,
|
||
return (i.e. ignore the signal) rather than exiting.
|
||
This affects both the core client and apps that use
|
||
boinc_init_diagnostics().
|
||
|
||
api/
|
||
boinc_api.C
|
||
lib/
|
||
diagnostics.C
|
||
|
||
Jeff 22 Oct 2004
|
||
- Fixed a validator bug that caused result overflow conditions not
|
||
to be detected and passed on to the assimilator. Overflow indicators
|
||
have not been passed to the master science db since 9/24/2004.
|
||
|
||
DB_VALIDATOR_ITEM_SET::enumerate() - added stderr_out to the query
|
||
VALIDATOR_ITEM::parse() - added stderr_out to the parse logic
|
||
DB_VALIDATOR_ITEM_SET::update_result() - update the result.opaque field
|
||
|
||
db/
|
||
boinc_db.C
|
||
|
||
David 22 Oct 2004
|
||
- schedule_cpus(): assume that if a task ran for X seconds,
|
||
it got X seconds of CPU time.
|
||
This makes the schedule work correctly even when
|
||
apps don't report their CPU time.
|
||
|
||
client/
|
||
client_state.C
|
||
cs_apps.C
|
||
|
||
David 25 Oct 2004
|
||
- Use double instead of time_t to represent time;
|
||
use dtime() instead of time(0) to get time
|
||
- better error message on upload init failure
|
||
- add lib/result_state.h to VC project
|
||
|
||
client/
|
||
client_state.C
|
||
client_types.h
|
||
cs_prefs.C
|
||
cs_scheduler.C
|
||
net_xfer.h
|
||
pers_file_xfer.C,h
|
||
schedule_op.C,h
|
||
ss_logic.C,h
|
||
lib/
|
||
util.C,h
|
||
win_build/
|
||
boinc_gui.vcproj
|
||
|
||
David 25 Oct 2004
|
||
- fixed bug that caused app's reported CPU time to always stay at zero
|
||
This is a by-product of recent graphics changes:
|
||
boinc_init() was getting the current thread handle and assuming
|
||
it's the worker thread, which is not the case now.
|
||
Fix: use a single variable for worker thread handle;
|
||
if boinc_graphics_init() is called, it changes it
|
||
|
||
api/
|
||
boinc_api.C,h
|
||
graphics_api.C
|
||
|
||
David 25 Oct 2004
|
||
- fix compile errors.
|
||
I conditionally commented out stuff related to taskbar icon
|
||
in the BOINC GUI code,
|
||
since taskbar icon doesn't seem to exist on X11/GTK
|
||
|
||
api/
|
||
boinc_api.h
|
||
clientgui/
|
||
BOINCGUIApp.cpp,h
|
||
Makefile.old
|
||
|
||
David 25 Oct 2004
|
||
- New features for forums:
|
||
- lets you rate messages (binary)
|
||
- lets you filter what messages you see, based on ratings
|
||
From Janus Kristensen
|
||
|
||
NOTE: to use this, you need to update your DB to add some fields
|
||
to the forum_preferences table; see html/ops/db_update.php
|
||
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
ops/
|
||
db_update.php
|
||
user/
|
||
edit_forum_preferences_action.php
|
||
edit_forum_preferences_form.php
|
||
forum_rate.php
|
||
forum_thread.php
|
||
|
||
David 25 Oct 2004
|
||
- add <active_task_state> and <vm_size> fields
|
||
to XML for active task (for GUI RPC)
|
||
- compile fixes for app graphics (from Bruce Allen and Reinhard Prix)
|
||
|
||
boincglut/
|
||
Makefile.am
|
||
include/
|
||
Makefile.am (new)
|
||
client/
|
||
app.C
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
|
||
David 26 Oct 2004
|
||
- Fixed the following problem with graphics apps on Unix:
|
||
- the worker timer handler (on_timer) was set up in boinc_init();
|
||
this is called in the main thread,
|
||
which for graphics apps ends up being the graphics thread.
|
||
- the call to getrusage() in on_timer() was returning
|
||
the CPU time of the graphics thread, not the worker thread
|
||
- there doesn't seem to be a way for one thread to
|
||
get the CPU time of another thread
|
||
Solution: (unfortunately requires a change to the API):
|
||
apps that use graphics now call either
|
||
boinc_init_graphics() or
|
||
boinc_init_options_graphics()
|
||
and DON'T call boinc_init()
|
||
|
||
api/
|
||
boinc_api.C,h
|
||
graphics_api.C,h
|
||
|
||
Rom 26 Oct 2004 (boinc)
|
||
- Tag for 4.52 release, all platforms
|
||
boinc_core_release_4_52
|
||
|
||
|
||
David 26 Oct 2004
|
||
- Further changes to graphics API
|
||
|
||
api/
|
||
boinc_api.C,h
|
||
graphics_api.C
|
||
|
||
David 26 Oct 2004
|
||
- forum updates (from Jans)
|
||
|
||
NOTE: run the DB update to get the right default behavior
|
||
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
ops/
|
||
db_update.php
|
||
user/
|
||
edit_forum_preferences_form.php
|
||
forum_post.php
|
||
forum_rate.php
|
||
|
||
David 26 Oct 2004
|
||
- added "supports graphics" boolean to RESULT GUI RPC reply
|
||
|
||
client/
|
||
app.C
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
|
||
David 28 Oct 2004
|
||
- client GUI: makefile fix, compile fix
|
||
- removed debugging stuff from boinc_api.C
|
||
|
||
api/
|
||
boinc_api.C
|
||
clientgui/
|
||
Makefile.old
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
|
||
Eric 28 Oct 2004
|
||
- added threading flags and libraries to compile lines.
|
||
- upload handler now checks for zero length
|
||
|
||
Makefile.incl
|
||
aclocal.m4
|
||
api/
|
||
Makefile.am
|
||
apps/
|
||
Makefile.am
|
||
client/
|
||
Makefile.am
|
||
clientgui/
|
||
Makefile.am
|
||
lib/
|
||
Makefile.am
|
||
sched/
|
||
Makefile.am
|
||
file_upload_handler.C
|
||
tools/
|
||
Makefile.am
|
||
|
||
David 29 Oct 2004
|
||
- update_versions looks for .sig files for single-file applications
|
||
(from Eric Myers)
|
||
|
||
api/
|
||
graphics_api.h
|
||
tools/
|
||
update_versions
|
||
|
||
David 29 Oct 2004
|
||
- show app version# in result page
|
||
|
||
html/inc/
|
||
result.inc
|
||
|
||
David 31 Oct 2004
|
||
- fix clientgui compile on Solaris
|
||
- Mac OS/X app graphics fixes
|
||
|
||
NOTE: shared memory doesn't seem to work right on Mac OS 10.2.
|
||
I've battled this for 2 solid days and am giving up for now.
|
||
|
||
api/
|
||
Makefile.am
|
||
boinc_api.C
|
||
graphics_api.C
|
||
macc_app_opengl.C,h
|
||
client/
|
||
app_start.C
|
||
clientgui/
|
||
stdwx.h
|
||
lib/
|
||
util.C
|
||
|
||
David 1 Nov 2004
|
||
- Fixed the display of top users/hosts/teams ordered by average credit.
|
||
This code wasn't taking into account how long ago
|
||
the average credit was computed.
|
||
The fix: add functions user_inactive_days() (host/team also)
|
||
If the user's expavg_time is older than a week,
|
||
call user_decay_credit() to decay the average credit.
|
||
- create a PHP function update_average(),
|
||
exactly the same as the C++ function.
|
||
- add a "Generated on" line at the bottom of cached pages
|
||
|
||
html/
|
||
inc/
|
||
cache.inc
|
||
credit.inc (new)
|
||
host.inc
|
||
team.inc
|
||
user.inc
|
||
user/
|
||
top_hosts.php
|
||
top_teams.php
|
||
top_users.php
|
||
lib/
|
||
util.C
|
||
|
||
David 1 Nov 2004
|
||
- PHP caching: call clearstatcache() prior to filemtime(),
|
||
just in case the file doesn't exist anymore.
|
||
NOTE: this doesn't seem to work.
|
||
Sometimes it thinks a cached copy is there, but it's not.
|
||
- row4(): don't left/right align
|
||
- core client download page:
|
||
don't check for user login (this page is cached!!)
|
||
|
||
html/
|
||
inc/
|
||
cache.inc
|
||
util.C
|
||
user/
|
||
download.inc
|
||
|
||
David 2 Nov 2004
|
||
- update schema.sql with forum-related changes
|
||
|
||
db/
|
||
schema.sql
|
||
|
||
David 2 Nov 2004
|
||
- split Dhrystone source into 2 files (from Peter Smithson).
|
||
This supposedly prevents compiler optimizations on Win
|
||
that give inflated results (I don't see this).
|
||
|
||
client/
|
||
dhrystone.C
|
||
dhrystone.h (new)
|
||
dhrystone2.C (new)
|
||
win_build/
|
||
boinc_cli.vcproj
|
||
boinc_gui.vcproj
|
||
|
||
Karl 2004-11-02
|
||
- added environment options INSTALL_DIR and TOP_SOURCE_DIR for upgrade
|
||
|
||
tools/
|
||
upgrade
|
||
py/Boinc/
|
||
BOINC_path_config.py.in
|
||
|
||
David 3 Nov 2004
|
||
- change trivial validator to not require majority
|
||
(this apparently applies even to error results; should fix this)
|
||
- avoid crash if get ack for non-existent result
|
||
(from Volker Hatzenberger)
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
sched/
|
||
sample_trivial_validator.C
|
||
|
||
David 4 Nov 2004
|
||
- compile fixes
|
||
|
||
configure.ac
|
||
client
|
||
Makefile.am
|
||
|
||
David 5 Nov 2004
|
||
- get clientgui to compile on Solaris.
|
||
- include <stdexcept>
|
||
- add NOCLIPBOARD flag in Makefile,
|
||
since Solaris WxWidgets doesn't seem to know about clipboard
|
||
NOTE: it compiles but crashes
|
||
- don't include boinc_api.h in util.C: ???
|
||
|
||
clientgui/
|
||
Makefile.old
|
||
ViewMessages.cpp,h
|
||
stdwx.h
|
||
lib/
|
||
util.C
|
||
|
||
David 5 Nov 2004
|
||
- move declaration of boinc_calling_thread_cpu_time()
|
||
from boinc_api.h to util.h
|
||
|
||
api/
|
||
boinc_api.h
|
||
client/
|
||
dhrystone.C
|
||
whetstone.C
|
||
lib/
|
||
util.h
|
||
|
||
Rom 5 Nov 2004
|
||
- Fixed a crashing bug on Solaris since the Window events show up in a drastically
|
||
different order than on other platforms.
|
||
- Fixed a bug that kept the GUI from closing down during a logoff or shutdown event
|
||
- GUI has reached feature partity with the previous GUI.
|
||
|
||
clientgui/
|
||
MainDocument.cpp
|
||
taskbarex.cpp, .h
|
||
BOINCTaskBar.cpp, .h
|
||
|
||
Rom 5 Nov 2004 (boinc)
|
||
- Tag for 4.54 release, all platforms
|
||
boinc_core_release_4_54
|
||
|
||
David 6 Nov 2004
|
||
- include credit.inc where needed
|
||
|
||
html/inc
|
||
team.inc
|
||
host.inc
|
||
|
||
Rom 7 Nov 2004
|
||
- Modify the main build environment for Windows to include the new GUI, and remove
|
||
the old build environment.
|
||
|
||
win_build/
|
||
boinc.sln
|
||
boincgui.vcproj
|
||
|
||
Karl 2004-11-07
|
||
- add _autosetup steps to nightly-tarball and 'make dist', so that
|
||
autogenerated files don't have to be checked into the repository.
|
||
|
||
Makefile.am
|
||
nightly-tarball
|
||
|
||
Bruce Allen 2004-11-07
|
||
- added include credit.inc
|
||
|
||
html/user/
|
||
top_teams.php
|
||
|
||
David 9 Nov 2004
|
||
- typo in graphics_api.C
|
||
- credit.inc is already included in team.inc
|
||
|
||
api/
|
||
graphics_api.C
|
||
html/user
|
||
top_teams.php
|
||
|
||
David 9 Nov 2004
|
||
- GUI RPC changes:
|
||
- enclose requests and replies in <boinc_gui_rpc_request>
|
||
or <boinc_gui_rpc_reply> tags (make them more legit XML).
|
||
- add <version> element to both requests and replies
|
||
- add /003 to end of requests messages
|
||
NOTE: neither end currently checks for or uses these elements.
|
||
- add CLIENT_STATE::version() (returns version #)
|
||
- moved win_config.h from client/win to top level,
|
||
since version number is needed by components
|
||
other than client
|
||
|
||
win_config.h (new)
|
||
client/
|
||
app_start.C
|
||
client_state.C,h
|
||
gui_rpc_server.C
|
||
win/
|
||
win_config.h (removed)
|
||
lib/
|
||
gui_rpc_client,.C
|
||
win_build/
|
||
BOINCGUI.vcproj
|
||
boinc_cli.vcproj
|
||
boinc_dll.vcproj
|
||
boinc_gui.vcproj
|
||
boinc_guirpc_test.vcproj
|
||
boinc_ss.vcproj
|
||
upper_case.vcproj
|
||
|
||
Rom 9 Nov 2004
|
||
- Add needed files by the new installer
|
||
- Convert the Windows binaries from static linking to dynamic linking and
|
||
get the installer to include the 7.1 run-times
|
||
|
||
client/win/
|
||
dbghelp.dll (removed)
|
||
win_build/
|
||
license.txt (removed)
|
||
readme.txt (removed)
|
||
splash.bmp (removed)
|
||
*.vcproj
|
||
*.sln
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
win_build/installerv2/redist/
|
||
setup.ico
|
||
setup.bmp
|
||
win_build/installerv2/redist/0409/
|
||
eula.rtf
|
||
readme.txt
|
||
win_build/installerv2/redist/Windows/x86/
|
||
dbghelp.dll
|
||
|
||
David 10 Nov 2004
|
||
- put brackets around hostname in "can't resolve" error msg
|
||
- handle "next N" correctly in forum text search
|
||
(from Volker Hatzenberger)
|
||
- add RNG code for Windows (in case we ever need to
|
||
generate true random bits there)
|
||
|
||
client/
|
||
net_xfer.C
|
||
html/user/
|
||
forum_text_search_action.php
|
||
lib/
|
||
crypt_prog.C
|
||
|
||
Rom 10 Nov 2004
|
||
- Remove the old VC 6.0 build files
|
||
- Include the boinc_gui project within the boinc solution again to ease
|
||
debugging
|
||
- Update the new installer to shutdown and uninstall the BOINC
|
||
service during uninstall.
|
||
|
||
win_build/
|
||
*.dsp (Removed)
|
||
*.dsw (Removed)
|
||
boinc_gui.vcproj
|
||
BOINCGUI.vcproj
|
||
boinc.sln
|
||
|
||
Rom 10 Nov 2004
|
||
- Create a custom action to copy account files from a specific location
|
||
when the ACCOUNTS_LOCATION public property is defined.
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
win_build/installerv2/redist/Windows
|
||
Accounts_CopyFiles.vbs
|
||
|
||
David 11 Nov 2004
|
||
- error out compile if no file lock mechanism
|
||
|
||
client/
|
||
file_names.C
|
||
lib/
|
||
filesys.C
|
||
|
||
David 11 Nov 2004
|
||
- compile fixes and cleanup for Mac
|
||
|
||
api/
|
||
boinc_gl.h
|
||
graphics_api.C
|
||
gutil.C
|
||
mac_app_opengl.C,h (removed)
|
||
mac_carbon_gl.C,h (removed)
|
||
reduce.C
|
||
boincglut/lib/glut/
|
||
glutint.h
|
||
clientgui/
|
||
MainDocument.cpp
|
||
Makefile.old
|
||
|
||
Rom 12 Nov 2004
|
||
- New Installer: Set screensaver to the BOINC screensaver
|
||
- New Installer: Detect the presence of the old BOINC installer and warn the
|
||
user to uninstall the old BOINC.
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
win_build/installerv2/redist/Windows/
|
||
BOINC.vbs
|
||
|
||
Rom 12 Nov 2004
|
||
- On Windows, BOINC should not prompt for a project if non exist.
|
||
- On Windows, remove the -install and -uninstall from the commandline
|
||
since the installer now takes care of it.
|
||
|
||
client/
|
||
main.C
|
||
cd_cmdline.C
|
||
client/win/
|
||
win_service.cpp
|
||
|
||
David 12 Nov 2004
|
||
- bug fixes for admin web interface (from Bruce Allen)
|
||
- change GUI RPC port number from 31416 to 1043
|
||
- remove Mac files from Makefile
|
||
|
||
api/
|
||
Makefile.am
|
||
client/
|
||
gui_rpc_server.C,h
|
||
html/
|
||
inc/
|
||
db_ops.inc
|
||
ops/
|
||
db_action.php
|
||
lib/
|
||
gui_rpc_client.h
|
||
|
||
David 12 Nov 2004
|
||
- booleans in config.xml are represented as <foo>1</foo>
|
||
(<foo/> still supported for now)
|
||
|
||
html/
|
||
inc/
|
||
host.inc
|
||
util.inc
|
||
user/
|
||
create_account_action.php
|
||
create_account_form.php
|
||
results.php
|
||
sched/
|
||
sched_config.C
|
||
|
||
David 12 Nov 2004
|
||
- clear need_validate in all cases
|
||
|
||
sched/
|
||
validator.C
|
||
|
||
Rom 12 Nov 2004
|
||
- Fixed a bug that kept people from being able to attach to a new project
|
||
because of a control ID change.
|
||
- Fix the reference to gui_rpc_client.h in the project file.
|
||
|
||
clientgui/
|
||
ViewProjects.cpp
|
||
win_build/
|
||
BOINCGUI.vcproj
|
||
|
||
Rom 12 Nov 2004
|
||
- Bring the screensaver up to date by adding diagnostics support, exception support,
|
||
and stackwalker support.
|
||
- Include the ability for the screensaver to make GUI RPC's.
|
||
- Convert the MFC style trace statements to BOINCTRACE statements.
|
||
- Give the ability for the screensaver to log to logfiles.
|
||
- Give the ability for the screensaver to track memory allocations and dump leaks
|
||
to the log file.
|
||
|
||
client/win/
|
||
win_screensaver.cpp
|
||
lib/
|
||
diagnostics.h
|
||
win_build/
|
||
boinc_ss.vcproj
|
||
|
||
Rom 13 Nov 2004 (boinc)
|
||
- Tag for 4.55 release, all platforms
|
||
boinc_core_release_4_55
|
||
|
||
Bruce Allen 13 Nov 2004
|
||
- Fixed, modified, tested script to remove workunits.
|
||
Linked to main ops page.
|
||
- Fixed links at bottom of workunits page, showing outcomes of results.
|
||
- Added tabular description of tables to the database form page,
|
||
longer clause box
|
||
- Added fix (commented out) to get pictures for systems without
|
||
TrueColor support (GD v 2)
|
||
- Fix to db_action.inc so it works under PHP<4.3.0
|
||
|
||
html/ops/
|
||
cancel_wu.php (removed)
|
||
cancel_wu_form.php
|
||
cancel_wu_action.php
|
||
index.php
|
||
db_form.php
|
||
html/inc/
|
||
db_ops.inc
|
||
profile.inc
|
||
db_action.inc
|
||
|
||
Rom 14 Nov 2004
|
||
- Updated the core screensaver code to use the GUI RPC's instead of passing
|
||
Window messages.
|
||
- Added two new GUI RPC's, set_screensaver_mode, and get_screensaver_mode.
|
||
- Added ID tags to the top of several files.
|
||
- Cleanup screensaver code
|
||
|
||
api/
|
||
windows_opengl.C
|
||
client/
|
||
gui_rpc_server.C
|
||
main.C
|
||
ss_logic.C
|
||
client/win/
|
||
boinc_ss.rc
|
||
win_screensaver.cpp, .h
|
||
win_util.cpp, .h
|
||
lib/
|
||
gui_rpc_client.C, .h
|
||
|
||
David 14 Nov 2004
|
||
- remove hardwired font sizes from web code
|
||
|
||
html/
|
||
inc/
|
||
forum.inc
|
||
forum_show.inc
|
||
ops/
|
||
cancel_wu_action.php
|
||
|
||
David 14 Nov 2004
|
||
- improve account-creation email msg
|
||
- login_action.php allows authenticator to be passed as GET arg
|
||
|
||
html/
|
||
inc/
|
||
util.inc
|
||
user/
|
||
login_action.php
|
||
|
||
David 14 Nov 2004
|
||
- Fix for a validator bug pointed out by Bruce Allen:
|
||
After a call to check_set(),
|
||
update results whose outcome was changed to VALIDATE_ERROR
|
||
or whose validate_state was set to VALID or INVALID,
|
||
whether or not a canonical result was found.
|
||
- Add stack-trace code to Unix signal handler
|
||
|
||
lib/
|
||
diagnostics.C
|
||
sched/
|
||
validator.C
|
||
|
||
David 14 Nov 2004
|
||
- changed default download page link to point to BOINC site
|
||
|
||
html/user/
|
||
intro.php
|
||
sample_index.php
|
||
|
||
Rom 14 Nov 2004
|
||
- Update screensaver so that it'll pass target Window Station and
|
||
Desktop to the graphics app via the CC, the CC code still needs
|
||
to be written.
|
||
- When the shared memory segment for the graphics channel is updated
|
||
to include the Window Station and Desktop the apps will now be able
|
||
to traverse the Window Station/Desktop boundry on Windows NT based
|
||
platforms. I still need to run this on a 9x platform and see if
|
||
I need to change the API calls into LoadLibrary/GetProcAddress calls.
|
||
- Update the diagnostics header so it can co-exist with the wxWidget
|
||
library.
|
||
|
||
api/
|
||
windows_opengl.C
|
||
client/
|
||
gui_rpc_server.C
|
||
client/win/
|
||
win_screensaver.cpp
|
||
lib/
|
||
diagnostics.h
|
||
gui_rpc_client.C, .h
|
||
win_build/
|
||
boinc_guirpc_test.vcproj
|
||
boinc_ss.vcproj
|
||
|
||
Bruce 15 Nov 2004
|
||
- Work on documentation for config.xml file.
|
||
Add explanation, missing material. More work needed.
|
||
- Added time zone to 'last modified' date.
|
||
|
||
doc/
|
||
configuration.php
|
||
docutil.php
|
||
|
||
David 15 Nov 2004
|
||
- some times were being read/written as ints instead of double
|
||
(from Sebastian Masch)
|
||
This fixes a bug of giving up on uploads too soon
|
||
|
||
NOTE: the time returned by dtime() is NOT THE SAME AS UNIX TIME.
|
||
YOU CAN'T MIX AND MATCH. REMEMBER THIS!!!!
|
||
|
||
client/
|
||
client_types.C
|
||
pers_file_xfer.C
|
||
win/
|
||
wingui_mainwindow.cpp
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
|
||
David 15 Nov 2004
|
||
- get rid of time(0) as much as possible
|
||
|
||
client/
|
||
app_control.C
|
||
client_types.C
|
||
cs_data.C
|
||
net_xfer.h
|
||
|
||
David 15 Nov 2004
|
||
- assimilator: after each enumeration of WUs, do a COMMIT.
|
||
This will hopefully fix a bug where a WU would appear
|
||
in an two enumerations in succession
|
||
(this happens when the enumerations are short,
|
||
i.e. when the assimilator is nearly caught up).
|
||
|
||
sched/
|
||
assimilator.C
|
||
|
||
Rom 15 Nov 2004
|
||
- Update screensaver logic in the core client to pass back the error
|
||
code to the screensaver instead of trying to also be a screensaver
|
||
- Remove the screensaver code from the old GUI
|
||
- Update the new setup to include the symbol files by default
|
||
- Update the diagnostics header so that BOINCTRACE is __noop in cases
|
||
where files are part of the STL or MS CRT when being compiled as part
|
||
of a wxwidget application like the boincmgr application.
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
ss_logic.C, .h
|
||
client/win/
|
||
win_screensaver.cpp
|
||
win_mainwindow.cpp, .h
|
||
lib/
|
||
diagnostics.h
|
||
win_build/
|
||
boinc_gui.vcproj
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
|
||
David 16 Nov 2004
|
||
- Validator bug: look for file name in xml_doc_out, not xml_doc_in
|
||
|
||
sched/
|
||
validate_util.C
|
||
|
||
Bruce 16 Nov 2004
|
||
- Fix bug in ops pages displaying counts of zero if 'additional
|
||
clauses' includes string names such as name='first_workunit'
|
||
|
||
- Result summary pages corrected for boundary condition errors in
|
||
arrays and to cover additional result.outcome==6 case. Result
|
||
summaries now sum correctly over outcomes!
|
||
- Add validate state to result tables, color code for validate
|
||
state information
|
||
html/inc/
|
||
db_ops.inc
|
||
util_ops.inc
|
||
|
||
html/ops
|
||
db_action.php
|
||
|
||
David 16 Nov 2004
|
||
- compile fixes for Linux, Solaris
|
||
|
||
lib/
|
||
diagnostics.C
|
||
gui_rpc_client.C
|
||
|
||
Rom 17 Nov 2004
|
||
- Update screensaver so that it'll work across
|
||
Window Station and Desktop boundries.
|
||
Note: The screensaver will now work with the password checkbox
|
||
enabled on NT machines.
|
||
- Update screensaver so that it reports all error conditions
|
||
that the old GUI used to report.
|
||
- Update screensaver so that if BOINC isn't running
|
||
and graphics capable apps
|
||
it'll display the result name and percent completed.
|
||
NOTE: this hasn't been tested yet.
|
||
- Updated BOINC Manager with some const changes.
|
||
- Updated BOINC Manager so that it can detect which Window Station
|
||
and Desktop it is currently executing in,
|
||
and pass that info off to BOINC when needed.
|
||
- Updated the CC so that it doesn't try to act like a screensaver anymore,
|
||
so now we can have a unified screensaver experience.
|
||
- Updated the CC to pass the Window Station and Desktop information
|
||
to the science application so it can transition into the screensaver
|
||
desktop when the user
|
||
has the password checkbox checked on NT based platforms.
|
||
- Updated the shared memory structures for passing the extra information
|
||
that is now needed.
|
||
- Updated the GUI RPC's to require Window Station and Desktop information
|
||
when needed.
|
||
|
||
NOTE: A lot of this stuff hasn't been tested on Win9x yet.
|
||
|
||
api/
|
||
windows_opengl.C
|
||
client/
|
||
app.h
|
||
app_control.C
|
||
app_graphics.C
|
||
gui_rpc_sever.C
|
||
ss_logic.C, .h
|
||
client/win/
|
||
boinc_ss.h
|
||
boinc_ss.rc
|
||
win_screensaver.cpp, .h
|
||
win_mainwindow.cpp
|
||
clientgui/
|
||
BOINCGUIApp.cpp, .h
|
||
BOINCTaskbar.cpp
|
||
MainDocument.cpp, .h
|
||
WorkView.cpp
|
||
lib/
|
||
app_ipc.C, .h
|
||
gui_rpc_client.C, .h
|
||
gui_test.C
|
||
|
||
Bruce 17 Nov 2004
|
||
- Fixed RESULT form on ops page so that it now covers correctly
|
||
all possible states (including ones with value 0) and
|
||
eliminated the 'Unknown' values that previously appeared on the form.
|
||
These were in error. This is a clean fix, by defining (for example)
|
||
outcome='CHOOSE_ALL', eg a non-numerical value, for the 'select
|
||
ALL' case.
|
||
- Added a select menu for validate_state to the RESULT form.
|
||
- In forms for outcome, validate_state, client_state and
|
||
server_state, indicate numeric values (helpful if using
|
||
additional clauses for more sophisticated queries)
|
||
html/inc/
|
||
db_ops.inc
|
||
html/ops/
|
||
db_form.php
|
||
|
||
David 17 Nov 2004
|
||
- Slight repackaging of Rom's last checkin:
|
||
- Define a structure GRAPHICS_MSG that includes
|
||
mode, window_station and desktop.
|
||
Pass around references to this struct
|
||
instead of the items separately.
|
||
- Revert to a single array "xml_graphics_modes"
|
||
- comment out BOINCTRACE calls. These don't work on Linux
|
||
|
||
api/
|
||
windows_opengl.C
|
||
x_opengl.C
|
||
client/
|
||
app.h
|
||
app_control.C
|
||
app_graphics.C
|
||
client_state.C
|
||
gui_rpc_server.C
|
||
ss_logic.C,h
|
||
lib/
|
||
app_ipc.C,h
|
||
gui_rpc_client.C
|
||
|
||
Rom 17 Nov 2004
|
||
- Bug Fix: The screensaver wouldn't shutdown when just the application
|
||
window was dismissed by moving the mouse two or three pixels.
|
||
There is a new graphics message called MODE_QUIT which is treated
|
||
like MODE_HIDE_GRAPHICS by the app,
|
||
but the CC sees the message and tells the screensaver to stop.
|
||
|
||
api/
|
||
windows_opengl.C
|
||
client/
|
||
app_graphics.C
|
||
ss_logic.C
|
||
lib/
|
||
app_ipc.C, .h
|
||
|
||
David 17 Nov 2004
|
||
- UNIX applications graphics:
|
||
Use atexit(), setjmp() and longjmp() to pop the stack
|
||
and resume within xwin_graphics_event_loop()
|
||
when exit() is called in the graphics thread.
|
||
|
||
This means that we can use the standard GLUT library,
|
||
not our modified version.
|
||
|
||
Thanks to Bruce Allen for suggesting this!!!!
|
||
|
||
[Note inserted by Bruce the next day. ANSI-C 4.6.2.1 says: "The
|
||
longjmp function ... The longjmp function should not be called in
|
||
an exit handler (i.e., a function registered with the atexit
|
||
function (see <20>4.10.4.2)), since it might jump to some code which
|
||
is no longer in scope." This should be OK on OSes that delay image
|
||
teardown until after calling the handler functions, provided that
|
||
the routine calling exit() has cleaned up its memory. An
|
||
alternative might be to use dlopen() or the loader to replace the
|
||
calls to exit() with a BOINC routine.]
|
||
|
||
api/
|
||
gutil.C
|
||
x_opengl.C
|
||
client/
|
||
app_control.C
|
||
lib/
|
||
gui_rpc_client.C
|
||
gui_test.C
|
||
makefile.gui_test
|
||
|
||
David 17 Nov 2004
|
||
- call atexit() in restart(),
|
||
since this entry has been popped off the atexit "stack"
|
||
|
||
api/
|
||
x_opengl.C
|
||
|
||
David 17 Nov 2004
|
||
- compile fixes for Mac OS X
|
||
Applications graphics (at least for SETI@home) work on Mac now.
|
||
The close button is disabled when launch from cmdline (why??)
|
||
- remove references to boincglut/
|
||
- GUI RPC client: don't try to send RPC request if not connected
|
||
|
||
api/
|
||
Makefile.am
|
||
boinc_gl.h
|
||
graphics_api.C
|
||
x_opengl.C
|
||
client/
|
||
app_graphics.C
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
MainDocument.cpp,h
|
||
Makefile.old
|
||
ViewWork.cpp
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
|
||
Rom 17 Nov 2004
|
||
- Bug Fix: When BOINC is running as a service, make sure that we can display
|
||
some simple status messages about the progress of the projects.
|
||
- Bug Fix: Allow the apps to detect if they can support graphics, because
|
||
of the Window Station and Desktop change, if not report back to the
|
||
CC that graphics are not supported.
|
||
- Bug Fix: Configure the screensaver so that is can reestablish a connection
|
||
to the CC in case the core client is shutdown in the background, and
|
||
restarted.
|
||
- Bug Fix: Use the project name in the system status message instead of the
|
||
result name.
|
||
- Bug Fix: Screensaver now works even when BOINC is running as a service.
|
||
NOTE: This currently only works if the account is LocalSystem and
|
||
Interact with Desktop is checked.
|
||
- Bug Fix: When the service account is switched to an account that cannot
|
||
support interact with desktop make sure the screensaver can display
|
||
the project status.
|
||
- Bug Fix: If we have to report back that graphics are not supported in
|
||
the current configuration, don't create the window, it only makes
|
||
the system jittery. I suspect it has something to do with the
|
||
possibility of garbage UI events being sent to the application.
|
||
- Remove remain screensaver logic from the old GUI.
|
||
|
||
api/
|
||
windows_opengl.C
|
||
client/
|
||
ss_logic.C, .h
|
||
client/win/
|
||
win_screensaver.cpp
|
||
wingui_mainwindow.cpp
|
||
lib/
|
||
gui_rpc_client.h
|
||
|
||
Bruce 18 Nov 2004
|
||
- Bug fixes (thanks to Jens Seidler): set cross project id (CPID)
|
||
to random value when creating user account from Administrator form,
|
||
and lower_case email address before inserting into database.
|
||
Added script make_emails_lowercase.php which
|
||
goes through user database and changes email addresses to lowercase,
|
||
and sets CPID to a random string if it is currently 0 (empty).
|
||
It should be safe to run this script any number of times,
|
||
on a damanged or undamaged user database, with no side effects.
|
||
- 'Fixed' py/Boinc/add_util.py so that it takes cross_project_id
|
||
value out of XML file. Current default value is '0'.
|
||
Karl, could you fix this to make it a random string?
|
||
- validator.c sets global variable int boinc_validator_debuglevel
|
||
for use by check_set and check_match functions.
|
||
|
||
html/ops/
|
||
create_account_action.php
|
||
make_emails_lowercase.php
|
||
|
||
py/Boinc/
|
||
add_util.py
|
||
|
||
sched/
|
||
validator.C
|
||
|
||
David 18 Nov 2004
|
||
- Changed PHP code so that the "generated on" text
|
||
produced for cached pages appears inside the <html> tag
|
||
for HTML pages, and doesn't appear at all for XML output.
|
||
|
||
Cached pages must now call page_tail(true) rather than page_tail().
|
||
This function, not end_cache(), prints the "generated on" text.
|
||
|
||
- split some stuff out from util.inc into new .inc files
|
||
|
||
html/
|
||
inc/
|
||
cache.inc
|
||
email.inc (new)
|
||
image.inc (new)
|
||
team.inc
|
||
util.inc
|
||
user/
|
||
account_created.php
|
||
confirm_email_change.php
|
||
create_account_action.php
|
||
edit_email_action.php
|
||
edit_form_preferences_action.php
|
||
hosts_user.php
|
||
login_action.php
|
||
mail_passwd.php
|
||
sample_index.php
|
||
sample_status.php
|
||
show_user.php
|
||
team_display.php
|
||
team_email_lsit.php
|
||
top_*.php
|
||
|
||
David 18 Nov 2004
|
||
- UNIX app graphics: only call glutInit() once (avoid error msg)
|
||
- UNIX: if app exits with external signal, restart it
|
||
- check_suspend_activities(), check_suspend_network():
|
||
don't do anything more than once every 5 seconds
|
||
- call do_something() every 0.1 second,
|
||
to improve response time to GUI RPCs
|
||
|
||
api/
|
||
x_opengl.C
|
||
client/
|
||
app_control.C
|
||
app_graphics.C
|
||
client_state.C,h
|
||
cs_prefs.C
|
||
main.C
|
||
|
||
Bruce 19 Nov 2004 UTC
|
||
- Clean fix automake/autoconf to build graphical core client.
|
||
David, I don't have a Mac OSX box handy to test this on.
|
||
I followed your hints in Makefile.old.
|
||
If you need to modify the Mac build flags,
|
||
it is trivial, just search for ${host} in configure.ac and you'll see.
|
||
- Removed obsolete aclocal.m4 file from CVS:
|
||
it is build by the ./_autosetup script
|
||
- Added some more files to .cvsignore
|
||
|
||
.cvsignore
|
||
aclocal.m4
|
||
configure.ac
|
||
clientgui/
|
||
Makefile.am
|
||
|
||
Rom 19 Nov 2004
|
||
- Cleanup several warnings in the clientgui when all warnings are turned on in gcc.
|
||
- Added a /s parameter to the clientgui which will hide the main window on startup
|
||
for those OS's that support a system tray in there GUI.
|
||
- Added a new GUI RPC called <quit> which requests BOINC to quit nicely.
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
clientgui/
|
||
BOINCBaseView.cpp
|
||
BOINCGUIApp.cpp, .h
|
||
BOINCListCtrl.cpp, .h
|
||
BOINCTaskCtrl.cpp, .h
|
||
MainDocument.cpp
|
||
MainFrame.cpp
|
||
ViewMessages.cpp
|
||
ViewProjects.cpp
|
||
ViewResources.cpp
|
||
ViewTransfers.cpp
|
||
ViewWork.cpp
|
||
lib/
|
||
gui_rpc_client.C
|
||
|
||
Bruce 19 Nov 2004 UTC
|
||
|
||
- Added nice macro (wxWidgets.m4) to CVS for detection of wxWidgets.
|
||
Now switch off clientgui build (with nice warning) if wxWidgets is
|
||
not found. (thanks Reinhard Prix)
|
||
- Use outcome of pthread tests and corresponding flags to set pthreads
|
||
CFLAGS correctly.
|
||
- New user database email-lowercasing script more efficient, handles case
|
||
where user.id is not contiguous.
|
||
|
||
configure.ac
|
||
Makefile.am
|
||
m4/
|
||
wxWidgets.m4
|
||
html/ops/
|
||
make_emails_lowercase.php
|
||
|
||
Bruce 20 Nov 2004 UTC
|
||
|
||
- Added static volatile const char *BOINCrcsid="$Id:..."; string to
|
||
the top of all .C files. This means that 'string' or 'ident'
|
||
run on an executable will tell you the exact file versions used
|
||
in building it, since CVS replaces $Id:... with a complete version ID
|
||
string. Declaration is volatile so that the compiler won't remove
|
||
it even under agressive optimizations.
|
||
|
||
- Fixed initialization bug where calling boinc_init_graphics()
|
||
would not initialize options correctly, creating
|
||
lockfile/finished havoc in graphics APP. Thanks Reinhard!
|
||
David, please bless this.
|
||
|
||
ALL files of form *.C affected.
|
||
api/
|
||
boinc_api.C
|
||
|
||
Rom 20 Nov 2004
|
||
- Added VM size detection for NT platforms to the BOINC API set.
|
||
- Changed the STARTUPINFO structure in the CC CreateProcess call to hide
|
||
the console window created for the science applications.
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
app_start.C
|
||
|
||
David 20 Nov 2004
|
||
- web fix
|
||
|
||
html/user/edit_email_form.php
|
||
|
||
Rom 20 Nov 2004
|
||
- Bug Fix: Undue the change made this morning relating to the STARTUPINFO structure,
|
||
specifying the startup parameters causes the first call to ShowWindow to be
|
||
ignored, which means we would have to make a second call. This however, isn't
|
||
the bug E@H ran into.
|
||
- Bug Fix: With older clients that didn't specify the window station and desktop in
|
||
the share memory buffer, we ended up calling both OpenWindowStation and OpenDesktop
|
||
with their lpszWindowStation and lpszDesktop parameters being an empty string, which
|
||
is an undefined behavior. Apparently Windows returns a valid handle instead of NULL
|
||
and sends the application into another window station and desktop.
|
||
|
||
api/
|
||
windows_opengl.C
|
||
client/
|
||
app_start.C
|
||
|
||
David 20 Nov 2004
|
||
- Fix check_suspend_activity() logic when benchmarks running
|
||
- Old Win GUI: restore "Show Graphics" code
|
||
|
||
client/
|
||
client_state.C,h
|
||
cs_prefs.C
|
||
win/
|
||
wingui_mainwindow.cpp
|
||
|
||
David 21 Nov 2004
|
||
- Change team-related PHP code so that it recomputes
|
||
"nusers" by doing a select count(*) when a user
|
||
quits or joins a team.
|
||
Also cleaned up skanky PHP code.
|
||
|
||
html/
|
||
inc/
|
||
team.inc
|
||
util.inc
|
||
user/
|
||
team*.php
|
||
|
||
Rom 21 Nov 2004
|
||
- Bug Fix: I think this fixes the "Could not find item xxx in list view"
|
||
error messages for all tabs.
|
||
After detecting a disconnected state,
|
||
resrt the cache to and cache from variables
|
||
since the listview control does not reissue a cache request
|
||
when all the items have been deleted.
|
||
|
||
clientgui/
|
||
BOINCBaseView.cpp
|
||
|
||
David 22 Nov 2004
|
||
- print error msg if app_info.xml has unparsed text
|
||
- support notion of "batch" in work creation
|
||
- shorten messages in BOINC manager
|
||
|
||
api/
|
||
boinc_api.C
|
||
boinc_gl.h
|
||
client/
|
||
cs_statefile.C
|
||
clientgui/
|
||
BOINCTaskBar.cpp
|
||
MainDocument.cpp
|
||
MainFrame.cpp
|
||
Makefile.old
|
||
ValidateAccountKey.cpp
|
||
ValidateURL.cpp
|
||
ViewMessages.cpp
|
||
ViewProjects.cpp
|
||
ViewTransfers.cpp
|
||
ViewWork.cpp
|
||
db/
|
||
boinc_db.h
|
||
tools/
|
||
backend_lib.C
|
||
create_work.C
|
||
|
||
Karl 2004-11-22
|
||
- changed parsing for <non_cpu_intensive> to accept <non_cpu_intensive/>
|
||
or <non_cpu_intensive>1</non_cpu_intensive>
|
||
|
||
client/
|
||
scheduler_op.C
|
||
|
||
Rom 22 Nov 2004
|
||
- Fix a warning with the scheduler_op file
|
||
- Bug Fix: Context menu should now work on Win9x machines
|
||
- Bug Fix: Tooltip should now work of Win9x machines
|
||
- Bug Fix: BOINC Manager should now startup when the core client is not detected
|
||
- Bug Fix: Service setup has been temporarily disabled
|
||
|
||
client/
|
||
scheduler_op.C
|
||
clientgui/
|
||
BOINCGUIApp.cpp, .h
|
||
BOINCTaskBar.cpp, .h
|
||
MainDocument.cpp, .h
|
||
stdwx.h
|
||
clientgui/msw/
|
||
taskbarex.cpp, .h
|
||
lib/
|
||
gui_rpc_client.C, .h
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
|
||
Bruce 23 Nov 2004 UTC
|
||
- Build boinc zip compression library as part of normal
|
||
./configure && make process
|
||
- make install now installs libboinc_zip.a and boinc_zip.h
|
||
as part of normal make install
|
||
- Unix boinc client and boinc gui had the same name,
|
||
eg boinc_4.56_i686-pc-linux-gnu
|
||
I have changed this so that it is now
|
||
boinc_client_4.56_i686-pc-linux-gnu and
|
||
boinc_gui_4.56_i686-pc-linux-gnu.
|
||
If the change from boinc_ to boinc_client_ causes any pain,
|
||
please just modify CLIENT_BIN_FILENAME in configure.ac
|
||
- Removed -O3 as required compilation flag in building client gui.
|
||
Only needed for client (to optimize benchmarking routines).
|
||
- Removed un-necessary zip/configure.ac and zip/Makefile and zip/config.h
|
||
and config.h.in
|
||
- Added .cvsignore file for zip/ directory.
|
||
- Modified api/boinc_gl.h to use config.h to get correct include path
|
||
for glut.h
|
||
- Added double-inclusion protection for config.h
|
||
to avoid some warning messages
|
||
- Run autoheader BEFORE automake and autoconf in _autosetup
|
||
- Removed huge number of extraneous Makefile.in's
|
||
- Changed production of config.h from AM_ to AC_ macro
|
||
|
||
_autosetup
|
||
configure.ac
|
||
Makefile.am
|
||
config.h
|
||
config.h.in (removed)
|
||
clientgui/
|
||
Makefile.am
|
||
zip/
|
||
Makefile.am
|
||
configure.ac (removed)
|
||
Makefile (removed)
|
||
.cvsignore (added)
|
||
config.h (shouldn't be here anyway)
|
||
config.h.in (shouldn't be here anyway)
|
||
api/
|
||
boinc_gl.h
|
||
|
||
Rom 23 Nov 2004
|
||
- Bug Fix: Fix a crashing condition for both the screensaver and core client on
|
||
Win9x machines due to the Window Station and Desktop code.
|
||
- Bug Fix: Setup the core client to redirect stderr and stdout even though it is
|
||
running as a console. It's useful to do this in the case of where the core
|
||
client is launched from the boincmgr and so stderr and stdout cannot be
|
||
redirected.
|
||
|
||
client/
|
||
main.C
|
||
client/win/
|
||
win_screensaver.cpp
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
|
||
Rom 23 Nov 2004 (boinc)
|
||
- Tag for 4.56 release, all platforms
|
||
boinc_core_release_4_56
|
||
|
||
David 23 Nov 2004
|
||
- boinc_init_graphics_options() can be called with a NULL
|
||
worker_main argument.
|
||
This can be used by a separate graphics app.
|
||
|
||
api/
|
||
graphics_api.C
|
||
client/
|
||
net_stats.C
|
||
|
||
David 23 Nov 2004
|
||
- Remove the dependencies of a project on a source or build tree.
|
||
This involves:
|
||
- Don't copy boinc_path_config.py to project/bin
|
||
- Copy a bunch of files from source/py/Boinc to project/bin:
|
||
add_util.py, boinc_db.py, boinc_project_path.py, etc. etc.
|
||
- put keys in home/projects/PROJECT/keys, not in home/keys
|
||
- socket.gethostname() seems to return the full domain name on Linux.
|
||
Strip off the domain part for log_HOST etc.
|
||
- On project creation, symlink bin/stop and status to start,
|
||
rather than copying the file
|
||
|
||
py/Boinc/
|
||
database.py
|
||
setup_project.py
|
||
tools.py
|
||
sched/
|
||
start
|
||
tools/
|
||
make_project
|
||
|
||
Bruce 24 Nov 2004 UTC
|
||
- Added const char RCSID string to all *.c files,
|
||
so that 'ident' and 'strings' can identify file version numbers.
|
||
|
||
David 24 Nov 2004
|
||
- Fix the "upgrade" script.
|
||
You now run it in the source directory, not the project dir.
|
||
It now takes the project name (and optional root path) as arg
|
||
- Don't run "start" at the conclusion of upgrade
|
||
- make_project: don't copy upgrade to project/bin
|
||
- feeder: if restart enum in the middle of a scan,
|
||
return and sleep; don't keep trying 100 times
|
||
- feeder: make enum limit a #define
|
||
(should be a cmdline arg too)
|
||
|
||
py/Boinc/
|
||
setup_project.py
|
||
sched/
|
||
feeder.C
|
||
tools/
|
||
upgrade
|
||
|
||
David 24 Nov 2004
|
||
- don't run benchmarks if activities suspended (from Ian Hay)
|
||
- avoid buffer overrun in GUI RPC server
|
||
|
||
client/
|
||
cs_benchmark.C
|
||
gui_rpc_server.C
|
||
|
||
David 24 Nov 2004
|
||
- bug fix in graphics API (from Reinhard)
|
||
"first" should be init to true
|
||
|
||
api/
|
||
x_opengl.C
|
||
|
||
Karl 2004-11-25
|
||
- For add_util, when cross_project_id is default or 0, generate a random
|
||
UUID.
|
||
|
||
Py/Boinc/
|
||
tools.py (added make_uuid)
|
||
add_util.py
|
||
|
||
Bruce and Reinhard 2004-11-26
|
||
|
||
- Fixed autoconf/automake build process so that it works correctly
|
||
under Mac OSX. Also make dist now works (make distcheck still
|
||
broken). Karl, since you were the last
|
||
person to fix up this mess, how about taking a look??
|
||
- Added placeholders in sched/ for user: assimilator_placeholder.C
|
||
and validator_placeholder.C.
|
||
These are built by the build system, but can be replaced by user
|
||
code as desired.
|
||
|
||
Makefile.am
|
||
configure.ac
|
||
api/
|
||
Makefile.am
|
||
client/
|
||
Makefile.am
|
||
clientgui/
|
||
Makefile.am
|
||
db/
|
||
Makefile.am
|
||
m4/
|
||
Makefile.am
|
||
acx_pthread.m4
|
||
ax_check_gl.m4
|
||
ax_check_glu.m4
|
||
ax_check_glut.m4
|
||
ax_lang_compiler_ms.m4
|
||
kc_mysql.m4
|
||
sah_header_stdcxx.m4
|
||
test/
|
||
Makefile.am
|
||
zip/
|
||
Makefile.am
|
||
zip/unzip/
|
||
Makefile.am
|
||
zip/zip/
|
||
Makefile.am
|
||
test/
|
||
boinc_db.inc [removed: this file is autogenerated]
|
||
|
||
Bruce 2004-11-27
|
||
|
||
- Added a -dont_update_db command-line option to assimilator.C
|
||
which prevents it from updating the database, and so is useful
|
||
for testing.
|
||
|
||
sched/
|
||
assimilator.C
|
||
|
||
Karl 2004-11-27
|
||
- Fixed db_base.py to work with Python-MySQLdb 1.x
|
||
|
||
py/Boinc/
|
||
db_base.py
|
||
|
||
Bruce 2004-11-28
|
||
- Sanity check args to parse_str(doc, tag, ...) and return false
|
||
if !doc, !tag, or !strlen(tag)
|
||
lib/
|
||
parse.C
|
||
|
||
Bruce 2004-11-29
|
||
- Added command-line options -preserve_wu_files and -preserve_result_files
|
||
to the file deleter. This are useful to implement <no_delete/>
|
||
for all input or output files respectively.
|
||
- Documented <no_delete/> file tag.
|
||
- file_deleter logs strerror(errno) if unable to remove a result file.
|
||
- Admin database ops page: show all three file delete states, add additional
|
||
sort options to results page, better internal bug checking on state lists,
|
||
move result summary to top of WU detail page, show WU delay bound in
|
||
human-readable form, show cross_project_ID in user table.
|
||
sched/
|
||
file_deleter.C
|
||
doc/
|
||
files.php
|
||
html/inc
|
||
db_ops.inc
|
||
util.inc
|
||
|
||
David 29 Nov 2004
|
||
- scheduler: use safe_strncpy instead of strncpy for copying
|
||
stderr_out and xml_doc_out.
|
||
|
||
client/
|
||
test_http.C
|
||
test_net_xfer.C
|
||
doc/
|
||
various
|
||
sched/
|
||
assimilator.C
|
||
handle_request.C
|
||
|
||
Jeff 29 Nov 2004
|
||
- Log the number of WUs assimlated at the end of each WU enumeration.
|
||
|
||
sched/
|
||
assimilator.C
|
||
|
||
Jeff 29 Nov 2004
|
||
- Added back the "-noinsert" option, which had somehow disappeared.
|
||
|
||
sched/
|
||
assimilator.C
|
||
|
||
Bruce 30 Nov 2004
|
||
- Fixed errors in db_purge. If -max argument >= 1000, then it didn't
|
||
work because purged_workunits was reset to zero in do_pass(). Also,
|
||
max_number_workunits_to_purge was un-initialized if no -max argument
|
||
was given. David, please double-check these changes.
|
||
- Show all possible validate states on ops result summary page
|
||
html/inc
|
||
db_ops.inc
|
||
sched/
|
||
db_purge.C
|
||
|
||
David 30 Nov 2004
|
||
- fixed a bug in DB_VALIDATOR_ITEM_SET::update_result(): the lines
|
||
"server_state=%d, outcome=%d, opaque=%lf"
|
||
"where id=%d",
|
||
produce a bad SQL query (e.g. opaque=0.0000where id=4)
|
||
- fixed a bug in the transitioner:
|
||
TRANSITIONER_ITEM::enumerate() and query()
|
||
weren't reading "need_validate".
|
||
In some (rare) cases this would cause the flag
|
||
to get incorrectly cleared by the transitioner
|
||
|
||
NOTES:
|
||
- ALL VALIDATORS SHOULD BE RECOMPILED
|
||
- RECOMPILE THE TRANSITIONER
|
||
|
||
db/
|
||
boinc_db.C
|
||
client/
|
||
cs_account.C
|
||
main.C
|
||
|
||
David 30 Nov 2004
|
||
- Fixed a major bug in the whole damn system (thanks to Rattledagger)
|
||
If we have target_results successful results for a WU,
|
||
and there's no consensus, we need more results!!
|
||
There was no mechanism to produce them.
|
||
Fix: in the validator, if we call check_set() and there's
|
||
no consensus, and #success results == target_nresults,
|
||
increment target_nresults
|
||
|
||
Also had to add code to VALIDATOR_ITEM::enumerate() and parse()
|
||
to get target_nresults from the DB
|
||
|
||
db/
|
||
boinc_db.C
|
||
sched/
|
||
validator.C
|
||
|
||
David 1 Dec 2004
|
||
- Use exclusively UNIX time (1970-origin) on Windows.
|
||
Previously we were using times in both this format
|
||
and in Windows 1601-based format.
|
||
This is a bug waiting to happen (in fact, it had already happened).
|
||
- convert a few remaining absolute times from int to double
|
||
- Add a function validate_time().
|
||
This sees if its arg is in Windows format
|
||
(greater than now + 1000 days)
|
||
and if so converts it to UNIX format.
|
||
- Call validate_time() after parsing all absolute times
|
||
- in old GUI, show %done of file uploads correctly
|
||
|
||
NOTE: the time-checking code can be removed in the next major version
|
||
|
||
client/
|
||
client_types.C,h
|
||
pers_file_xfer.C,h
|
||
win/
|
||
wingui_mainwindow.cpp
|
||
lib/
|
||
util.C,h
|
||
|
||
David 1 Dec 2004
|
||
- UOTD screening: only show active users
|
||
- fix log grep pages
|
||
|
||
html/
|
||
ops/
|
||
profile_ops.php
|
||
show_log.php
|
||
user/
|
||
html.php
|
||
sched/
|
||
validator.C
|
||
|
||
Bruce 2 Dec 2004
|
||
- For unreturned results, show reporting deadline on user page.
|
||
- Add additional state possibilities.
|
||
- Explain validate error state.
|
||
|
||
html/
|
||
inc/
|
||
resuls.inc
|
||
user/
|
||
explain_state.php
|
||
|
||
Rom 2 Dec 2004
|
||
- Bug Fix: Each view now contains a display cache; the display cache
|
||
is synchronized during the regularly scheduled list render event.
|
||
The control grabs the necessary information from the cache instead
|
||
of cycling down to the document. Due to the way listviews were
|
||
implemented on some platforms I believe this will fix some refresh
|
||
problems where the data wasn<73>t being updated in a timely manor.
|
||
This also had the added benefit of increasing performance on displaying
|
||
updates.
|
||
- Fill in the missing piece for the memory leak detection to proplerly
|
||
display the file and line number information per allocation for the
|
||
GUI on Windows
|
||
- Rename the CC and GUI on all platforms to match that of Windows.
|
||
|
||
/
|
||
configure.ac
|
||
clientgui/
|
||
BOINCBaseView.cpp, .h
|
||
BOINCGUIApp.cpp
|
||
MainFrame.cpp, .h
|
||
stdwx.h
|
||
ViewMessages.cpp, .h
|
||
ViewProjects.cpp, .h
|
||
ViewResources.cpp, .h
|
||
ViewTransfers.cpp, .h
|
||
ViewWork.cpp, .h
|
||
clientgui/msw/
|
||
taskbarex.h
|
||
|
||
Bruce 2 Dec 2004
|
||
- Added emacs mode statement to the top of this file to eliminate tabs
|
||
in favor of spaces!
|
||
- Fixed boinc_zip.h so that it works correctly under both C++ and
|
||
C under both Unix and Win32.
|
||
- Modified admin ops pages so that workunit displays transition time,
|
||
and target_nresults. Results pages displays deadline not received time
|
||
for results that are still in progress or were never received.
|
||
- Fixed glut detection bug in configure script
|
||
- Made php script function correctly under both php4 and php5.
|
||
|
||
checkin-notes
|
||
configure.ac
|
||
zip/
|
||
boinc_zip.h
|
||
html/
|
||
inc/
|
||
db_ops.inc
|
||
util_ops.inc
|
||
|
||
Rom 2 Dec 2004
|
||
- Add in the rcsid tag to all the boincmgr source files and the screensaver
|
||
for windows.
|
||
- Bug Fix: Fix a messages bug where the client would not attempt to
|
||
get the latest message state after a connection failure until a new
|
||
message was logged.
|
||
- Cleanup some of the statusbar update code, wxWidgets already had a function
|
||
to do that work.
|
||
- Bug Fix: Fix the socks proxy enable button, it was referencing the HTTP proxy
|
||
control instead of the socks proxy control. ( I thought I had fixed this
|
||
awhile ago )
|
||
|
||
client/win/
|
||
win_screensaver.cpp
|
||
clientgui/
|
||
BOINCBaseView.cpp
|
||
BOINCGUIApp.cpp
|
||
BOINCListCtrl.cpp
|
||
BOINCTaskCtrl.cpp
|
||
DlgAbout.cpp
|
||
DlgAttachProject.cpp
|
||
DlgConnection.cpp
|
||
DlgOptions.cpp
|
||
MainDocument.cpp
|
||
MainFrame.cpp
|
||
stdwx.cpp
|
||
ValidateAccountKey.cpp
|
||
ValidateURL.cpp
|
||
ViewMessages.cpp
|
||
ViewProjects.cpp
|
||
ViewResources.cpp
|
||
ViewTransfers.cpp
|
||
ViewWork.cpp
|
||
clientgui/msw/
|
||
taskbarex.cpp
|
||
lib/
|
||
stackwalker_win.cpp
|
||
|
||
David 2 Dec 2004
|
||
- added script for fixing the problem where some workunits
|
||
have target_nresults successful results and no consensus.
|
||
The script finds WUs in this state and sets their need_validate flag;
|
||
the validator (MAKE SURE YOU'VE RECOMPILED WITH CURRENT SOURCE)
|
||
will increment target_nresults and trigger the transitioner,
|
||
which will create a new result.
|
||
|
||
|
||
html/ops/
|
||
repair_validator_problem.php
|
||
|
||
Bruce 2 Dec 2004
|
||
- Added logging of remaining result.outcome==OVER states to logging
|
||
output of transitioner.
|
||
- Fixed nasty bug in ops pages where top two WU error mask bits were
|
||
not being shown in WU summary/detail pages.
|
||
- Display some useful Unix times on db query page (helpful in formulating
|
||
queries.
|
||
|
||
sched/
|
||
transitioner.C
|
||
html/
|
||
inc/
|
||
db_ops.inc
|
||
ops/
|
||
db_form.inc
|
||
|
||
Rom 2 Dec 2004
|
||
- Bug Fix: On certain versions of Windows it might be necessary for the
|
||
screensaver to force the foreground window depending on the state in
|
||
which the screensaver was launched. This is the slightly less
|
||
aggressive way to do this. Ideally the active process is the screensaver
|
||
and so therefore can promote another process into the foreground.
|
||
|
||
client/win/
|
||
win_screensaver.cpp
|
||
lib/
|
||
gui_rpc_client.h
|
||
|
||
Rom 2 Dec 2004
|
||
- Fix a setup issue where the screensaver and manager files were not being
|
||
removed on uninstall.
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
|
||
Bruce 3 Dec 2004
|
||
- Fixed a nasty bug in the scheduler. Under a number of possible
|
||
error conditions, handle_request.C would read only some fields of
|
||
and existing request into memory, and then write more of those fields,
|
||
some of which were null, back into memory. This had the effect of nulling
|
||
out outcome, client_state, exit_status, cpu_time, xml_doc_out, stderr_out,
|
||
validate_state, claimed_credit and client_version. The point is that
|
||
DB_SCHED_RESULT_ITEM_SET::enumerate() followed by
|
||
DB_SCHED_RESULT_ITEM_SET::update_result
|
||
did not preserve an 'existing result'. It wiped out the fields above.
|
||
|
||
db/
|
||
boinc_db.C
|
||
|
||
Rom 3 Dec 2004
|
||
- Add back in trace statements to boincmgr's main frame, so we can begin to
|
||
track down the Mac OS X problem.
|
||
- Change the screensaver so that it only checks for BOINC's configuration
|
||
once.
|
||
|
||
client/win/
|
||
win_screensaver.cpp, .h
|
||
clientgui/
|
||
MainFrame.cpp
|
||
|
||
Rom 3 Dec 2004
|
||
- Change which wxLogTrace prototype we are using in MainFrame.cpp and
|
||
enable that trace mask in BOINCGUIApp.cpp
|
||
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
MainFrame.cpp
|
||
|
||
Eric 3 Dec 2004
|
||
- Altered the configure script to generate a config.h that includes
|
||
"win-config.h" on WIN32 systems
|
||
- Added a file "version.h[.in]" that contains platform independent version
|
||
info.
|
||
- Made a default "config.h" that tells the user to run configure on
|
||
non-windows systems. Includes "win-config.h" on windows systems.
|
||
|
||
config.h
|
||
version.h
|
||
version.h.in
|
||
configure.ac
|
||
win_config.h
|
||
|
||
Bruce 3 Dec 2004
|
||
|
||
- Enabled automatic emailing of CVS diffs to the boinc_cvs email
|
||
list. This is done by adding a 'syncmail' script in the CVSROOT/
|
||
directory and adding an extra line at the end of CVSROOT/loginfo.
|
||
|
||
Rom 3 Dec 2004
|
||
- Add an additional header for the additional logging prototypes under
|
||
wxWidgets
|
||
|
||
clientgui/
|
||
BOINCGUIApp.cpp
|
||
MainFrame.cpp
|
||
stdwx.h
|
||
|
||
Bruce 3 Dec 2004 (Thanks Reinhard!!)
|
||
- C extern statements so that 'API' header files can be included in C
|
||
programs as well as C++.
|
||
- Make install now only installs the header files needed for building
|
||
the external APIs.
|
||
|
||
api/
|
||
Makefile.am
|
||
boinc_api.h
|
||
graphics_api.h
|
||
lib/
|
||
Makefile.am
|
||
diagnostics.h
|
||
filesys.h
|
||
|
||
Rom 3 Dec 2004
|
||
- Fix build break on Windows where VC didn't like a C prototyped function
|
||
possibly throwing a C++ exception.
|
||
|
||
lib/
|
||
diagnostics.C, .h
|
||
|
||
Janus 5 Dec 2004
|
||
- Added forum navigation bar on bottom of threads (users dont need
|
||
to scroll up anymore to get back.
|
||
- Also made forum_threads.php output HTML 4.01 transitional valid
|
||
|
||
html/user/
|
||
forum_threads.php
|
||
|
||
Bruce 5 Dec 2004
|
||
|
||
- Redid 'fix' to scheduler bug from 3 December 2004. In fact the
|
||
fix was incomplete. In order for it to work as intended, I would
|
||
have also had to modify SCHED_RESULT_ITEM::parse to copy the
|
||
additional needed fields into the in-memory structure. But this
|
||
is fragile. The next time some additional fields are added to the
|
||
result table, they would have to be incorporated here as well, to
|
||
ensure that SET followed by UPDATE is the identity operation. So
|
||
I did a more graceful and robust fix. Simply set result.id=0 for
|
||
those results that have already been received or which for other
|
||
reasons should not be modified in the database, then skip these
|
||
when updating.
|
||
|
||
db/
|
||
boinc_db.C [reverted to 1.96 + comments]
|
||
sched/
|
||
handle_result.C
|
||
|
||
|
||
David 5 Dec 2004
|
||
- show message (DEBUG level) if > 1 result/user/WU situation occurs
|
||
- FreeBSD compile fixes (from J.R. Oldroyd)
|
||
|
||
client/
|
||
gui_rpc_server.C
|
||
net_xfer.C
|
||
sched/
|
||
sched_send.C
|
||
|
||
|
||
David 5 Dec 2004
|
||
- Improve app CPU time reporting on Win9x (which lacks real calls).
|
||
Old: return elapsed time-of-day
|
||
New: return elapsed time-of-day during which app was not suspended
|
||
- remove working-set arg from get_cpu_time() functions
|
||
(we're not returning anything anyway)
|
||
|
||
api/
|
||
boinc_api.C
|
||
graphics_api.C
|
||
client/
|
||
dhrystone.C
|
||
whetstone.C
|
||
db/
|
||
boinc_db.h
|
||
lib/
|
||
util.C,h
|
||
|
||
Bruce 6 Dec 2004 [thanks to Bernd Machenschalk!]
|
||
|
||
- Fixed 'time to checkpoint' problem under Win32 with pure C code.
|
||
It turns out that MS VC++ up to version 4.2 defines bool as INT.
|
||
But more recent VC++ defines bool as CHAR. This broke
|
||
boinc_time_to_checkpoint() under Win32, when used within pure ANSI
|
||
C code, if you treated the return value as a bool. So this patch
|
||
defines bool as char if using C under recent MS compilers.
|
||
|
||
David, a better solution for API functions that should be
|
||
callable from C is to make them return 'int' not 'bool'.
|
||
Probably ditto for Fortran. Sigh.
|
||
|
||
api/
|
||
boinc_api.h
|
||
graphics_api.h
|
||
|
||
lib/
|
||
filesys.h
|
||
|
||
David 6 Dec 2004
|
||
- removed references to win_config.h from VC++ project files
|
||
- removed stuff from Makefiles that generates client/win/win_config.h
|
||
(this file isn't used anymore)
|
||
|
||
set-version
|
||
client/
|
||
Makefile.am
|
||
win_build/
|
||
boinc_gui.vcproj
|
||
boinc_guirpc_test.vcproj
|
||
upper_case.vcproj
|
||
|
||
David 6 Dec 2004
|
||
- Added priority field to workunit and result tables.
|
||
Can be used to prioritize work dispatch
|
||
(implemented; run feeder with -priority_order option)
|
||
and to give higher priority to retries (not implemented)
|
||
- Added mod_time field to workunit and result tables.
|
||
This is stored in a MySQL format (12-char ASCII representation)
|
||
Need to add an index for this.
|
||
- add "batch" and "priority" args to create_work
|
||
- renamed host.workseq_next to host.hr_class
|
||
- added "avg_turnaround" field to host table.
|
||
Use this to keep track of average result latency.
|
||
Use this for "performance homogeneous scheduling"
|
||
(neither of these implemented yet)
|
||
- add new DB fields to db_dump.C, db_purge.C
|
||
- changed "account ID" to "account key" everywhere
|
||
- Python code: all Python is now copied to project/bin.
|
||
Eliminate the "Boinc" module.
|
||
boinc_path_config.py is no longer used by anything
|
||
in the project side, and it doesn't exist in project/bin.
|
||
- At conclusion of account creation,
|
||
send user to the BOINC site to download the core client.
|
||
We no longer expect projects to store the core client
|
||
in their DB or download directory.
|
||
- The email telling users their account key now takes into
|
||
account whether this is a new account,
|
||
whether it needs to be validated,
|
||
whether the user clicked "remind me of my key", etc.
|
||
- Web: improved and reorganized the display of general prefs
|
||
- client: don't redirect stderr/out on platforms other than Win
|
||
- when add project, check for empty URL or authenticator
|
||
- removed code (already commented out) that tells the server
|
||
what other projects the host is attached to.
|
||
This could be viewed as an invasion of privacy.
|
||
- create_work: error-check that enough input files are listed
|
||
- remove limit of 10 output files
|
||
(small change to process_result_template())
|
||
- default uldl_dir_fanout (for new projects) is 1024
|
||
|
||
NOTE: this checkin requires that you update your database.
|
||
See html/ops/db_update.php
|
||
|
||
TODO: if you type <OUTFILE_0> instead of <OUTFILE_0/>
|
||
in a result template it screws things up.
|
||
Should use better syntax, and error-check.
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
main.C
|
||
db/
|
||
boinc_db.C,h
|
||
constraints.sql
|
||
schema.sql
|
||
html/
|
||
inc/
|
||
db_ops.inc
|
||
email.inc
|
||
host.inc
|
||
prefs.inc
|
||
util.inc
|
||
ops/
|
||
create_account_action.php
|
||
db_update.php
|
||
user/
|
||
account_created.php
|
||
account_setup_first.php
|
||
account_setup_first_download.php
|
||
create_account_action.php
|
||
get_passwd.php
|
||
mail_passwd.php
|
||
py/Boinc/
|
||
add_util.py
|
||
database.py
|
||
projectxml.py
|
||
setup_project.py
|
||
tools.py
|
||
sched/
|
||
db_dump.C
|
||
db_purge.C
|
||
feeder.C
|
||
file_upload_handler.C
|
||
handle_request.C
|
||
main.C
|
||
sched_send.C
|
||
sched_util.C,h
|
||
server_types.C,h
|
||
transitioner.C
|
||
tools/
|
||
backend_lib.C,h
|
||
create_work.C
|
||
make_project
|
||
process_result_template.C
|
||
update_versions
|
||
xadd
|
||
|
||
Rom 6 Dec 2004
|
||
- Like so many other things in life, breaking out the MFC references
|
||
into there own include file proved that things are never as easy
|
||
as they first appear. As of right now the old GUI will not work
|
||
without a major investment in time and energy. I'm not going to
|
||
worry about it unless somebody really, really, really needs it.
|
||
- boinc_win.h now doesn't do anything with MFC. And undefined min
|
||
and max from the Windows header files.
|
||
- Diagnostics functions should no longer use exception handling for
|
||
error conditions.
|
||
|
||
client/
|
||
net_xfer.C
|
||
client/win/
|
||
wingui.cpp
|
||
wingui_dialog.cpp
|
||
wingui_listctrl.cpp
|
||
wingui_mainwindow.cpp
|
||
wingui_piectrl.cpp
|
||
wingui_proxydlg.cpp
|
||
stdafx.cpp, .h (added)
|
||
lib/
|
||
boinc_win.h
|
||
diagnostics.C, .h
|
||
win_build/
|
||
boinc.sln
|
||
boinc_gui.vcproj
|
||
|
||
Rom 6 Dec 2004
|
||
- Force include StdAfx.h for all files in boinc_gui.vcproj fixes the
|
||
linker problems.
|
||
|
||
win_build/
|
||
boinc.sln
|
||
boinc_gui.vcproj
|
||
|
||
Bruce 7 Dec 2004
|
||
- Missing close bracket
|
||
- Use HAVE_STD_MIN and HAVE_STD_MAX to detect if std::min and std::max are needed.
|
||
Ron, please check and correct if needed -- build was broken under Linux.
|
||
html/
|
||
ops/
|
||
db_update.php
|
||
api/
|
||
reduce.C
|
||
|
||
Rom 7 Dec 2004
|
||
- Include the STL header that deals with min and max for STL, and then include
|
||
std_fixes.h just in case it needs fixing.
|
||
|
||
api/
|
||
reduce.C
|
||
|
||
David 7 Dec 2004
|
||
- Win compile fix - don't include std_fixes (???)
|
||
|
||
api/
|
||
reduce.C
|
||
|
||
Rom 7 Dec 2004
|
||
- Fix a bug exposed by mikey2345 configuration that would create a bunch of
|
||
host records, basically if the state file cannot be written to, BOINC should
|
||
not run.
|
||
|
||
client/
|
||
client_state.C
|
||
|
||
Bruce 7 Dec 2004
|
||
- Added additional options -gzip, -zip, -max_wu_per_file to db_purge. The
|
||
compression options are 'efficient' in that they do not write an uncompressed
|
||
file then compress -- they go straight to compressed. SIGHUP and lockfile
|
||
shutdown signals are properly caught and close compressed files and DB cleanly.
|
||
- Typo killed feeder with bad MySQL syntax
|
||
|
||
sched/
|
||
db_purge.C
|
||
feeder.C
|
||
|
||
Rom 7 Dec 2004
|
||
- Checkin changes suggested by Bruce Allen and Bernd Machenschalk related to
|
||
compiling in pure ANSI C environments.
|
||
|
||
lib/
|
||
boinc_win.h
|
||
diagnostics.h
|
||
filesys.h
|
||
|
||
David 7 Dec 2004
|
||
- fix update_versions to allow signature files (.sig)
|
||
for files other than the main program
|
||
- make_project: create forum_index.php, rss_main.php, status.php
|
||
for new projects (from sample files)
|
||
- make_project: fill in reasonable values in config.xml for
|
||
min_sendwork_interval, max_wus_to_send, daily_result_quota,
|
||
disable_account_creation, and show_result
|
||
py/Boinc/
|
||
setup_project.py
|
||
tools.py
|
||
tools/
|
||
update_versions
|
||
|
||
Bruce 7 Dec 2004
|
||
- Moved RCSID tags to END of all .c .C and .cpp files, as per
|
||
David's request.
|
||
- Added additional normal and debug log output to db_purge
|
||
|
||
sched/
|
||
db_purge.C
|
||
|
||
David 7 Dec 2004
|
||
- fixed PHP bug: account key missing from emails
|
||
|
||
html/inc/
|
||
email.inc
|
||
|
||
David 8 Dec 2004
|
||
- change makefiles so that libboinc, libboinc_api and libboinc_api_graphics
|
||
have disjoint contents
|
||
- change client makefile so it uses libboinc instead of separate .o files
|
||
- added my .vimrc
|
||
|
||
.vimrc
|
||
api/
|
||
Makefile.am
|
||
apps/
|
||
Makefile.am
|
||
client/
|
||
Makefile.am
|
||
lib/
|
||
Makefile.am
|
||
|
||
David 8 Dec 2004
|
||
- web site: added Team leaderboards broken down by type (see team.php)
|
||
|
||
html/
|
||
inc/
|
||
team.inc
|
||
util.inc
|
||
user/
|
||
sample_index.php
|
||
team.php
|
||
top_teams.php
|
||
|
||
Rom 8 Dec 2004
|
||
- While looking for something else about wxListCtrl in the source I found
|
||
references to Freeze()/Thaw() which should reduce flicker on platforms
|
||
other than Windows. I'm going to try and implement the same thing with
|
||
Windows in a roundabout fashion.
|
||
|
||
clientgui/
|
||
BOINCBaseView.cpp
|
||
|
||
David 8 Dec 2004
|
||
- moved bmplib and tgalib from seti_boinc to boinc/api
|
||
|
||
api/
|
||
Makefile.am
|
||
bmplib.C,h (new)
|
||
tgalib.C,h (new)
|
||
|
||
David 8 Dec 2004
|
||
- added boinc_report_app_status() function to API
|
||
(lets controllers report CPU time etc.)
|
||
|
||
api/
|
||
boinc_api.C,h
|
||
client/
|
||
Makefile.am
|
||
|
||
Bruce 9 Dec 2004
|
||
- Fixed broken build (and removed non-functional broken fix). API
|
||
subdirs must be built first.
|
||
- Removed bmplib.C tgalib.C from api/Makefile.am as workaround
|
||
for missing header files + code. Note: header files must also
|
||
be listed among source files!
|
||
|
||
Makefile.am
|
||
client/
|
||
Makefile.am
|
||
api/
|
||
Makefile.am
|
||
|
||
David 9 Dec 2004
|
||
- put user name in confirmation email correctly
|
||
|
||
html/user/
|
||
account_setup_nonfirst_done.php
|
||
create_account_action.php
|
||
|
||
David 9 Dec 2004
|
||
- Fix error in HTTP logic used in file uploading:
|
||
When we've received the HTTP header for a file upload reply,
|
||
don't set io_done to true;
|
||
otherwise we'll immediately try to read the reply body,
|
||
and it might not be there yet.
|
||
|
||
api/
|
||
Makefile.am
|
||
client/
|
||
http.C,h
|
||
net_xfer.C,h
|
||
|
||
David 9 Dec 2004
|
||
- Really fixed the above problem.
|
||
The HTTP code was looking at the wrong flag
|
||
(io_done, should have been io_ready)
|
||
in the POST2 case waiting for reply body
|
||
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
http.C,h
|
||
|
||
David 10 Dec 2004
|
||
- added a function get_file_dir() (in lib/filesys.C)
|
||
that searches the directories in the PATH env var,
|
||
looking for an executable file with a given name
|
||
(this is so boincmgr can find boinc on Unix)
|
||
|
||
client/
|
||
http.C
|
||
lib/
|
||
filesys.C,h
|
||
util.C,h
|
||
|
||
|
||
Rom 10 Dec 2004
|
||
- Bug Fix: Under the previous arrangement there was a timer event that would
|
||
fire off once a second to check for the possiblility that the item in the
|
||
list view had been deselected. We weren't receiving a deselection event
|
||
for single selection controls. So I've ripped out the timer code and
|
||
trapped the controls click event, and check the controls state.
|
||
|
||
If we are a single selection control and the current selection is different
|
||
from the row that has focus, then manually send the deselection event.
|
||
|
||
If we are a multi selection control, check to see if anything is selected,
|
||
if not, then manually send the deselection event.
|
||
|
||
This has the added bonus of making our UI seem faster.
|
||
|
||
NOTE: I know this wasn't on the list to fix this release, but it was driving
|
||
me nuts.
|
||
|
||
clientgui/
|
||
BOINCBaseView.cpp, .h
|
||
BOINCGUIApp.cpp
|
||
BOINCListCtrl.cpp, .h
|
||
MainFrame.cpp, .h
|
||
|
||
|
||
David 10 Dec 2004
|
||
- Refactored the app graphics code so that it can be used in 2 ways:
|
||
1) Linked with the main program.
|
||
This works OK on Windows, but on UNIX there's the problem
|
||
that the app won't run unless the required libraries
|
||
(openGL, X11) are present.
|
||
2) Graphics code in a separate shared library.
|
||
The main program calls a new function boinc_init_graphics_lib(),
|
||
giving it the name of the shared library.
|
||
This function tries to open the library.
|
||
If this fails (e.g. because X11 libs aren't there)
|
||
it runs the application without graphics.
|
||
Otherwise it calls the graphics initialization routine
|
||
in the library, which creates the graphics thread.
|
||
|
||
This case is tricky because the library's initialization routine
|
||
can't directly call boinc_init() (from boinc_api.C).
|
||
Doing so requires boinc_api.o to be linked with the library,
|
||
which gives it separate copies of all the static variables.
|
||
This produces a situation where, e.g., there are two copies of
|
||
"fraction_done"; the one in the main program gets updated,
|
||
the one in the library remains zero and
|
||
gets reported to the core client.
|
||
|
||
To solve this problem, the library's initialization routine
|
||
takes a pointer to boinc_init() as an argument,
|
||
and calls it via that pointer.
|
||
boinc_api.o must NOT be linked with the shared library.
|
||
|
||
Bruce Allen thought up the idea of doing graphics
|
||
in a separate library.
|
||
|
||
TODO: graphics_lib.C isn't finished. Bruce?
|
||
|
||
api/
|
||
graphics_api.C
|
||
(link this with monolithic apps)
|
||
graphics_impl.C,h (new)
|
||
(link this with monolithic apps,
|
||
and with the shared library in the non-monolithic case)
|
||
graphics_lib.C,h (new)
|
||
(link this with the main program in the non-monolithic case)
|
||
|
||
David 10 Dec 2004
|
||
- Fixed a bug in the validator that could cause WUs to
|
||
get stuck in a state where they have no canonical result,
|
||
no results in progress, and no transition scheduled.
|
||
|
||
1) After calling check_set(), count the number "nsuccess_results"
|
||
of results that still have outcome == SUCCESS
|
||
(this may have changed, since check_set() can change
|
||
the outcome to VALIDATE_ERROR).
|
||
|
||
2) If check_set() fails to find a canonical result,
|
||
always schedule an immediate transition.
|
||
|
||
3) If nsuccess_results >= target_nresults,
|
||
set target_nresults to nsuccess_results+1.
|
||
This ensures that the transitioner will make a new result,
|
||
even in pathological cases (e.g. nsuccess_results > target_nresults)
|
||
|
||
sched/
|
||
validator.C
|
||
|
||
Bruce 10 Dec 2004
|
||
|
||
David, here's a rough pass, I haven't even tried to compile
|
||
it. Please read comments in-line. I think the major
|
||
shortcoming is
|
||
that most (all?) apps will want to use 'handle' to resolve their
|
||
own functions to communicate data from worker to app graphics.
|
||
Perhaps we should provide an additional argument to
|
||
boinc_init_graphics_lib() for that purpose? At the right point,
|
||
after sucessful dlopen(), boinc_init_graphics_lib() will call
|
||
that user-supplied function (if not NULL) passing it handle.
|
||
On return boinc_init_graphics_lib() will then carry on and start
|
||
graphics.
|
||
It's fun working on a file that's not in Makefile. No guilt!
|
||
|
||
api/
|
||
graphics_lib.C
|
||
|
||
David 10 Dec 2004
|
||
- Spiffed up Bruce's code a little and got it compile.
|
||
The DLL handle is now available as a global variable
|
||
(graphics_lib_handle)
|
||
- change BOINC_OPTIONS::defaults() to a regular function,
|
||
options_defaults(BOINC_OPTIONS&).
|
||
More of the API (e.g. boinc_init_options()) is now "pure C"
|
||
|
||
api/
|
||
boinc_api.C,h
|
||
grpahics_impl.C
|
||
graphics_lib.C,h
|
||
|
||
David 10 Dec 2004
|
||
- Added clientgui/Makefile.mac
|
||
Currently, to use this you have to:
|
||
- install Wxwidgets 2.5.3 at the same level as boinc/
|
||
- create clientgui/ in the wxwidgets samples directory
|
||
- copy the contents of boinc/clientgui there
|
||
- make -f Makefile.mac
|
||
|
||
clientgui/
|
||
Makefile.mac (new)
|
||
stdwx.h
|
||
|
||
David 11 Dec 2004
|
||
- Fixed Makefile.am for building graphics libs
|
||
|
||
api/
|
||
Makefile.am
|
||
|
||
Bruce 12 Dec 2004
|
||
Added extern C declarations to a couple of header files:
|
||
- In graphics_lib.h, this is for compatibility with pure C
|
||
applications.
|
||
- In graphics_impl.h, this would be needed EVEN if we were
|
||
never building app or library with anything other than C++.
|
||
It's because dlsym() can only work if you pass it a non-name
|
||
mangled symbol. Please see:
|
||
http://www.isotton.com/howtos/C++-dlopen-mini-HOWTO/C++-dlopen-mini-HOWTO.html
|
||
for futher edetail.
|
||
- Comments added to graphics_lib.C, better error message.
|
||
|
||
api/
|
||
graphics_lib.C
|
||
graphics_lib.h
|
||
graphics_impl.h
|
||
|
||
David 12 Dec 2004
|
||
- spruced up graphics lib stuff, removed a "*" that may have caused crash.
|
||
|
||
api/
|
||
boinc_api.h
|
||
graphics_api.h
|
||
graphics_impl.C,h
|
||
graphics_lib.C,h
|
||
|
||
David 13 Dec 2004
|
||
- bug fixes for graphics lib stuff.
|
||
Code in the app's graphics shared library (including x_opengl.C)
|
||
must not directly reference variables in the main program
|
||
(e.g. app_client_shm) because it will have "shadow" copies of them.
|
||
|
||
Changed the graphics_impl interface so that the shared library
|
||
function gets passed a pointer to a structure (BOINC_MAIN_STATE)
|
||
containing everything it will need to access.
|
||
|
||
This is a first pass. May need to add more to BOINC_MAIN_STATE.
|
||
And should clean up .h file structure so that compiler will
|
||
enforce constraints.
|
||
|
||
api/
|
||
graphics_api.C,h
|
||
graphics_impl.C,h
|
||
graphics_lib.C
|
||
x_opengl.C
|
||
|
||
Karl 2004-12-13
|
||
- Fixed testbase to work with Python 2.4.
|
||
|
||
test/
|
||
testbase.py
|
||
|
||
David 13 Dec 2004
|
||
- Fix a bug where a result could potentially bounce back
|
||
and forth between the transitioner and the validator.
|
||
This could happen if there are min_quorum success results,
|
||
and there's no consensus.
|
||
The fix:
|
||
- added new value for result.validate_state:
|
||
VALIDATE_STATE_INCONCLUSIVE means that check_set()
|
||
was called for the result and it didn't find a canonical result.
|
||
- The transitioner sets workunit.need_validate
|
||
if there are min_quorum success results,
|
||
and at least one is VALIDATE_STATE_INIT
|
||
(no change - this is how it currently is)
|
||
- validator:
|
||
consider results that are both INIT and INCONCLUSIVE
|
||
If check_set() doesn't find a quorum,
|
||
set all result states to INCONCLUSIVE
|
||
|
||
Thanks to Kjell Nedrelid (Rattledagger) for finding this.
|
||
- added logic to admin HTML to show INCONCLUSIVE state
|
||
- Took boinc_real_escape_string() stuff out of HTML ops code.
|
||
If prevented SQL queries from working on isaac
|
||
|
||
db/
|
||
boinc_db.h
|
||
html/
|
||
inc/
|
||
db_ops.inc
|
||
result.inc
|
||
user.inc
|
||
ops/
|
||
db_action.php
|
||
sched/
|
||
assimilator.C
|
||
transitioner.C
|
||
validator.C
|
||
|
||
Rom 13 Dec 2004
|
||
- Bug Fix: BOINC Manager needs to initialize the System Idle Tracker
|
||
in order for BOINC to detect if the system is idle.
|
||
- BOINC Setup for Windows - The UI is now complete for the Single,
|
||
Shared, and Service install types.
|
||
|
||
clientgui/
|
||
BOINCGUIApp.cpp, .h
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
|
||
Janus 13 Dec 2004
|
||
- Added a text-box that displays how many more chars the user can
|
||
write in the signature on forum prefs page
|
||
(Thanks goes to Christian)
|
||
- Also made changes to make this file HTML 4.01 transitional valid
|
||
|
||
html/user/
|
||
edit_forum_preferences_form.php
|
||
|
||
David 14 Dec 2004
|
||
- Win compile fix
|
||
|
||
api/
|
||
windows_opengl.C
|
||
|
||
David 14 Dec 2004
|
||
- moved mem_usage() from api/boinc_api.C to lib/mem_usage.C (new)
|
||
and changed its return value from (int) KBytes to (double) bytes.
|
||
POLICY: BOINC INTERNALS NEVER USE UNITS LIKE KBYTES.
|
||
USE THE NATIVE UNIT (E.G. BYTES), AND STORE IT IN A DOUBLE.
|
||
- changed the XML tags used in
|
||
- API messages
|
||
- GUI RPCs
|
||
- client_state.xml
|
||
for storing VM sizes.
|
||
This doesn't justify a major-version change since we
|
||
don't use these for anything critical.
|
||
|
||
api/
|
||
boinc_api.C
|
||
graphics_impl.h
|
||
graphics_lib.C
|
||
client/
|
||
app.C,h
|
||
app_control.C
|
||
cs_apps.C
|
||
lib/
|
||
Makefile.am
|
||
mem_usage.C,h (new)
|
||
gui_rpc_client.C,h
|
||
|
||
David 14 Dec 2004
|
||
- win compile fix
|
||
|
||
lib/
|
||
mem_usage.C
|
||
win_build/
|
||
upper_case.vcproj
|
||
|
||
David 14 Dec 2004
|
||
- Added code to validator to maintain host.avg_turnaround
|
||
|
||
sched/
|
||
validator.C
|
||
|
||
David 14 Dec 2004
|
||
- Added a version of boinc_get_init_data() to graphics_impl.C
|
||
|
||
api/
|
||
graphics_impl.C
|
||
|
||
Reinhard Prix 2004-12-15
|
||
- Make sure that when --enable-maintainer-mode is used, automatic
|
||
re-configuration will find the proper macro-definitions in m4.
|
||
|
||
Makefile.am
|
||
|
||
David 14 Dec 2004
|
||
- Moved boinc_get_init_data() from graphics_impl.C
|
||
to a new file, graphics_impl_lib.C
|
||
(included in libboinc_graphics_impl.a, but not in libboinc_graphics.a)
|
||
to resolve a duplicate-name problem
|
||
|
||
api/
|
||
Makefile.am
|
||
graphics_impl.C
|
||
graphics_impl_lib.C (new)
|
||
|
||
Rom 15 Dec 2004
|
||
- Setup should now be able to handle both the Single and Shared installation
|
||
types.
|
||
|
||
win_build/installerv2/
|
||
boinc.ism
|
||
|
||
David 15 Dec 2004
|
||
- transitioner:
|
||
if WU has error, set unvalidated results to VALIDATE_STATE_NO_CHECK
|
||
- Web:
|
||
- show WU error flags to users
|
||
- show link to canonical result on WU page
|
||
- clearer heading for deadline colors
|
||
|
||
html/
|
||
inc/
|
||
result.inc
|
||
util.inc
|
||
user/
|
||
workunit.php
|
||
sched/
|
||
transitioner.C
|
||
|
||
Rom 16 Dec 2004
|
||
- Bug Fix: Apparently you cannot use the default constants that are normally
|
||
a part of the environment for a vbs script,
|
||
then in turn kept all the functions from returning the proper values.
|
||
- Bug Fix: Use the Session.Message functionality to report errors
|
||
to both the log file and the UI so we can actually see something
|
||
useful from dialog boxes and log files.
|
||
- Bug Fix: Prepopulate the service username field with the current user info
|
||
for the service install type
|
||
- Bug Fix: Remove the user domain field from the service config screen
|
||
to make room for the local system checkbox at some point
|
||
in time in the future.
|
||
- Bug Fix: Prevent an administrator from selecting an invalid
|
||
SETUPTYPE and ALLUSERS property combination.
|
||
I spent the better part of the day trying to figure out
|
||
how I might change the execution sequence so that changing the
|
||
ALLUSERS property based on the SETUPTYPE field would yield the right
|
||
redirection of the default folders
|
||
but it seems that the folder properties are handled via the
|
||
MSI engine itself and without a bit more knowledge I'm not
|
||
sure how to do it. But this only affects
|
||
those installing via the commandline or via some mass deployment
|
||
scenario and so just throwing an error is okay.
|
||
The errors describe the problem and how to fix it.
|
||
|
||
The UI handles this automatically,
|
||
so the average install scenario won't have to worry about this.
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
win_build/installerv2/redist/windows
|
||
BOINC.vbs
|
||
|
||
David 16 Dec 2004
|
||
- User web: put a cap of 10 days on network connect period
|
||
- User web: organize prefs page layout so that venues
|
||
are grouped more clearly.
|
||
Still needs some work.
|
||
|
||
html/
|
||
inc/
|
||
prefs.inc
|
||
util.inc
|
||
user/
|
||
prefs_edit_form.php
|
||
white.css
|
||
|
||
David 16 Dec 2004
|
||
- User web: let the founder of a team change the founder to
|
||
any other member (from Django Fett)
|
||
|
||
html/
|
||
inc/
|
||
db_ops.inc
|
||
user/
|
||
team_change_founder_action.php (new)
|
||
team_change_founder_form.php (new)
|
||
team_manage.php
|
||
|
||
David 16 Dec 2004
|
||
- transitioner: if a result times out, update the hosts'
|
||
avg_turnaround (charge it with the full delay bound)
|
||
- scheduler: print work_req_seconds as a double, not int
|
||
|
||
db/
|
||
boinc_db.C,h
|
||
sched/
|
||
sched_send.C
|
||
transitioner.C
|
||
|
||
Rom 16 Dec 2004
|
||
- Rework the CPU and Model Identification code on Windows so that
|
||
the specific CPU model is reported in the p_model field instead
|
||
of the p_vendor field. This fixes a bug in the predictor project
|
||
where new processors not already known to the OS were being flagged
|
||
as unknown and causing homogeneous redundancy to fail.
|
||
|
||
The vendor ID was being detected, it just wasn't being included
|
||
in the p_vendor field if a processor identifier was being detected.
|
||
The OS aparently throws in an 'Unknown CPU typ' string in the cases
|
||
where it cannot determine the proper string to put in the registry.
|
||
|
||
client/win/
|
||
hostinfo_win.cpp
|
||
|
||
Rom 16 Dec 2004
|
||
- Bug Fix: Make sure that BOINC Manager can be started after setup completes
|
||
- Bug Fix: Make sure the read me can be displayed after setup completes
|
||
- Bug Fix: Do not display the options for launching the BOINC Manager or
|
||
the readme during an uninstall operation
|
||
- Bug Fix: Make sure permissions are updated during install based on
|
||
the selected install type
|
||
- Bug Fix: Only create the startup shortcut when the ENABLELAUNHCATLOGON
|
||
property is set.
|
||
- Bug Fix: Only enable the screensaver when the ENABLESCREENSAVER property
|
||
is set.
|
||
|
||
Note: The screensaver and shortcut properties had been implemented awhile
|
||
ago, but the MSI package was doing something goofy with them.
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
win_build/installerv2/redist/windows
|
||
BOINC.vbs
|
||
|
||
David 16 Dec 2004
|
||
- bug fix: resident-set size on Linux was wrong
|
||
|
||
lib/
|
||
mem_usage.C
|
||
|
||
Rom 17 Dec 2004
|
||
- Bug Fix: Windows Scripting host needs to be installed before our setup
|
||
can work, so install it.
|
||
- Bug Fix: If the SETUPTYPE is Service or ServiceGUI perform validation
|
||
on the service account username and password
|
||
- Bug Fix: If the service useraccount doesn't already have the
|
||
'Logon As A Service' right grant it.
|
||
- Bug Fix: If the SETUPTYPE is Service, install it as a Windows service
|
||
under the specified user account
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
win_build/installerv2/redist/windows
|
||
BOINC.vbs
|
||
|
||
< Added a bunch of files required for various setup things >
|
||
|
||
David 17 Dec 2004
|
||
- VALIDATOR_ITEM: need to read receive_time so can update
|
||
host.avg_turnaround
|
||
|
||
db/
|
||
boinc_db.C
|
||
sched/
|
||
transitioner.C
|
||
|
||
Rom 17 Dec 2004
|
||
- Bug Fix: Should prereq the grant.exe tool for rights management
|
||
- Bug Fix: Redirect the grant rights vbscript to point to grant.exe
|
||
new location
|
||
- Now we can install the service via the commandline, need to hookup
|
||
the rights change confirmation dialog box
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
win_build/installerv2/redist/windows
|
||
BOINC.vbs
|
||
|
||
< Added a bunch of files required for various setup things >
|
||
|
||
David 17 Dec 2004
|
||
- Graphics lib tweaks: changed "bmsp" to "g_bmsp".
|
||
This eliminates a case (in boinc_init_graphics_impl())
|
||
where an arg shadowed a global var.
|
||
- Added boinc_is_standalone() (hook version) to graphics_impl_lib.C
|
||
|
||
api/
|
||
graphics_impl.C,h
|
||
grpahics_impl_lib.C
|
||
x_opengl.C
|
||
|
||
Rom 17 Dec 2004
|
||
- Bug Fix: Prompt the user for the permission to grant the selected account
|
||
the right to logon as a service
|
||
- Bug Fix: Fix an ACL problem when installing as a service, and the account
|
||
is not part of the administrators group
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
win_build/installerv2/redist/windows
|
||
BOINC.vbs
|
||
|
||
David 17 Dec 2004
|
||
- User web: refer to boinc.berkeley.edu for client download in all cases
|
||
|
||
html/user/
|
||
account_setup_first_action.php
|
||
|
||
Rom 17 Dec 2004
|
||
- Bug Fix: Remove customer information screen
|
||
- Bug Fix: Change splash screen
|
||
- Bug Fix: Only prompt for permission to change user rights if the install
|
||
type is a service install type
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
win_build/installerv2/redist/windows
|
||
BOINC.vbs
|
||
|
||
David 17 Dec 2004
|
||
- feeder: if a result's WU refers to nonexistent app,
|
||
print error message and exit
|
||
- core client: if can't create/bind/listen GUI RPC socket,
|
||
print error message and exit
|
||
|
||
client/
|
||
client_state.C
|
||
sched/
|
||
feeder.C
|
||
|
||
Rom 17 Dec 2004
|
||
- Bug Fix: Use an MSI DLL instead of grant.exe to grant the 'Logon As a Service'
|
||
right.
|
||
|
||
win_build/installerv2/
|
||
BOINC.ism
|
||
win_build/installerv2/redist/windows
|
||
BOINC.vbs
|
||
|
||
< Added a bunch of files required for various setup things >
|
||
|
||
Janus 18 Dec 2004
|
||
- Added description of the new colored column "Time reported or deadline".
|
||
- Added "Done" to the possible client states in "client state"
|
||
descriptions.
|
||
- New way of displaying the threadlist: Will use icons to tell if threads
|
||
are new/unread, important or filtered.
|
||
- Usual HTML corrections
|
||
|
||
html/inc
|
||
forum.inc
|
||
foum_show.inc
|
||
result.php
|
||
html/user
|
||
explain_state.php
|
||
results.php
|
||
filtered_post.png [new]
|
||
|
||
Rom 18 Dec 2004
|
||
- Make the idle detection code work again on the Windows platform.
|
||
|
||
Thanks to Eric Toungdale for pointing out what needed to be done to
|
||
fix it.
|
||
|
||
I claened up the orginal implementation a bit, reenabled some of the
|
||
debugging code that was remarked out.
|
||
|
||
client/
|
||
main.C
|
||
client/win/
|
||
hostinfo_win.cpp
|
||
win_idle_tracker.cpp
|
||
lib/
|
||
hostinfo.h
|
||
|
||
Rom 18 Dec 2004
|
||
- Add another layer of checks for Windows 2000 or better machines to get
|
||
try and get graphics to appear.
|
||
|
||
api/
|
||
windows_opengl.C
|
||
client/win/
|
||
win_screensaver.cpp
|
||
|
||
David 18 Dec 2004
|
||
- BOINC_MAIN_STATE.app_client_shm was being copied
|
||
from the variable app_client_shm before the variable was initialized.
|
||
Fix this by changing BOINC_MAIN_STATE to point to the variable
|
||
rather than having a copy of it.
|
||
|
||
api/
|
||
graphics_api.C
|
||
graphics_impl.h
|
||
graphics_lib.C
|
||
x_opengl.C
|
||
|
||
David 19 Dec 2004
|
||
- fix compile of old Win GUI
|
||
- update BOINC manager messages a little
|
||
|
||
client/win/
|
||
wingui_mainwindow.cpp
|
||
clientgui/
|
||
ViewMessages.cpp
|
||
ViewProjects.cpp
|
||
ViewResources.cpp
|
||
ViewTransfers.cpp
|
||
|
||
David 20 Dec 2004
|
||
- User web:
|
||
don't call db_init() in profile.inc.
|
||
This should be done by top-level files, not .inc files
|
||
- Admin web:
|
||
replaced brain-damaged "screen profiles" page.
|
||
The old one did 2 sequential scans of the profile table
|
||
for each screened profile.
|
||
The new one does 1 sequential scan for 20 screened profiles.
|
||
|
||
html/
|
||
inc/
|
||
host.inc
|
||
profile.inc
|
||
ops/
|
||
index.php
|
||
profile_ops.php (removed)
|
||
profile_screen_action.php (new)
|
||
profile_screen_form.php (new)
|
||
user/
|
||
create_profile.php
|
||
delete_profile.php
|
||
edit_forum_preferences_action.php
|
||
profile_menu.php
|
||
view_profile.php
|
||
|
||
David 20 Dec 2004
|
||
- have assimilate_handler return an error code.
|
||
If nonzero, assimilator exits
|
||
(don't want to mark WUs as assimilated if temporary NFS failure, e.g.)
|
||
- improve docs on file management, added doc on file_deleter
|
||
- added doc on backend utility funcs
|
||
- improve docs on assimilate_handler()
|
||
- core client: if an output file is too big, print info on size, limit
|
||
|
||
client/
|
||
cs_apps.C
|
||
doc/
|
||
various
|
||
backend_util.php (new)
|
||
benchmark.php (new)
|
||
file_deleter.php (new)
|
||
sched/
|
||
assimilate_handler.h
|
||
assimilator.C
|
||
assimilator_placeholder.C
|
||
file_deleter.C
|
||
sample_dummy_assimilator.C
|
||
sched_util.C
|
||
validate_util.C
|
||
|
||
David 20 Dec 2004
|
||
- modify scheduler to handle bad host IDs gracefully.
|
||
E.g.: it a project accidentally deletes its host table,
|
||
things will eventually return to normal without
|
||
users having to detach/reattach
|
||
|
||
Old logic:
|
||
look up host based on request.hostid
|
||
look up user based on host.userid
|
||
if user.authenticator != request.authenticator
|
||
send error message and delay request
|
||
|
||
New logic:
|
||
look up host based on request.hostid
|
||
If not found, create new host record and return its ID
|
||
look up user based on request.authenticator
|
||
if no such user
|
||
send error message and delay request
|
||
if host.userid != user.id
|
||
create new host record and return its ID
|
||
|
||
sched/
|
||
handle_request.C
|
||
|
||
David 20 Dec 2004
|
||
- app graphics: on Mac, reinit GLUT on each restart
|
||
Bruce: please test
|
||
|
||
api/
|
||
x_opengl.C
|
||
|
||
Rom 21 Dec 2004
|
||
- Circumvent identity spoofing on the boards by displaying the
|
||
user id of the poster.
|
||
|
||
html/inc
|
||
forum.inc
|
||
|
||
Bruce 22 Dec 2004
|
||
- Spent several hours tracking down a problem that turned
|
||
out to be the fact that sizeof(bool) is not consistent
|
||
even across gcc. It's 4 bytes on gcc 2.95, 1 byte on
|
||
gcc 3.0, 1 bytes on gcc 3.3 on x86 and 4 bytes on gcc 3.3
|
||
on OSX. Botton line: one MUST eliminate bool from any
|
||
library object that's meant to be used in the public
|
||
API available from C. I started fixing this across more
|
||
of the API but got nervous that this would break the E@h
|
||
builds and cause even more delay. So did a minimal fix
|
||
for now: changed boinc_time_to_checkpoint() to return int.
|
||
|
||
api/
|
||
boinc_api.C
|
||
boinc_api.h
|
||
apps/
|
||
upper_case.C
|
||
doc/
|
||
api.php
|
||
client_app.php
|
||
|
||
Rom 22 Dec 2004
|
||
- Fix globalization/localization bugs related to the fact that we
|
||
only lookup the information once, and it needs to be after
|
||
the wxLocale object is created.
|
||
- Add the ability for the task control to have a horizonal rule
|
||
- Create a CreateTask API that doesn't require a reference to a bitmap
|
||
- Remove icons from the various tasks until we can get some better
|
||
visuals
|
||
- Fix a flicker bug when no item is selected on the project tab
|
||
and you hover over the 'attach to new project' or 'BOINC' links
|
||
- Remove the ability to expand or collapse the various headers
|
||
- Per comunity feedback, reorder the project tasks and put a
|
||
horizonal rule between the three groups of actions.
|
||
|
||
clientgui/
|
||
BOINCBaseView.cpp, .h
|
||
BOINCTaskCtrl.cpp, .h
|
||
ViewMessages.cpp, .h
|
||
ViewProjects.cpp, .h
|
||
ViewResources.cpp, .h
|
||
ViewTransfers.cpp, .h
|
||
ViewWork.cpp, .h
|
||
|
||
Rom 22 Dec 2004 (boinc)
|
||
- Tag for 4.57 release, all platforms
|
||
boinc_core_release_4_57
|
||
|
||
David 22 Dec 2004
|
||
- shuffle logic in xwin_graphics_event_loop() to deal with
|
||
situation where glutInit() calls exit()
|
||
|
||
api/
|
||
x_opengl.C
|
||
|
||
Karl 2004-12-25
|
||
- Link to http://bioinformatics.pzr.uni-rostock.de/~moeller/debian/boinc/
|
||
(Stephen M<>ller's Debian packages)
|
||
- Clarify centiversions
|
||
|
||
doc/
|
||
anonymous_platform.php
|
||
|
||
David 25 Dec 2004
|
||
- core client: change WORKUNIT::command_line from char[256] to std::string.
|
||
This increases the limit on cmdline length from 256 to 8192
|
||
(there's still a fixed-size buffer in the Unix startup code).
|
||
|
||
It turns out there were no limitations on the server side.
|
||
|
||
Also, change the representation in the core state file from
|
||
<command_line>blah</command_line>
|
||
to
|
||
<command_line>
|
||
blah
|
||
</command_line>
|
||
to accommodate long command lines (can be many lines).
|
||
Each line is limited to 4096 chars
|
||
- process_wu_template(): replace a 64KB buffer with a std::string.
|
||
There's still a 64KB length limit,
|
||
but this way overruns are caught and reported
|
||
instead of create_work crashing.
|
||
|
||
client/
|
||
app_start.C
|
||
client_types.C,h
|
||
tools/
|
||
backend_lib.C
|
||
|
||
David 25 Dec 2004
|
||
- bug fix (from Nikolay Saharov): if user minimized app graphics window,
|
||
then closed it, then did "show graphics" again,
|
||
the result would be a nonexistent window,
|
||
impossible to manipulate.
|
||
Fix this by using original window size if window
|
||
is minimized or maximized
|
||
- compile fixes for SETI@home on Windows
|
||
removed extern "C" on jpeglib.h include (why did I need this
|
||
in the first place??)
|
||
api/
|
||
gutil.c
|
||
gutil.C
|
||
windows_opengl.C
|
||
win_build/
|
||
config.h (new)
|
||
win-config.h (new)
|
||
|
||
David 26 Dec 2004
|
||
- User web: define a function process_user_text() that
|
||
should be applied to any user-supplied text used in a SQL query.
|
||
It does trim(), stripslashes(), and boinc_real_escape_string()
|
||
- Update the account-creation and account-editing pages
|
||
to use the above; needs to be added a few other places too
|
||
- Remove the db_init() from forum.inc
|
||
and add db_init() as needed to .php files
|
||
(.inc files should NOT do db initialization)
|
||
|
||
html/
|
||
inc/
|
||
db.inc
|
||
forum.inc
|
||
util_ops.inc
|
||
user/
|
||
create_account_action.php
|
||
edit_user_info_action.php
|
||
forum*.php
|
||
|
||
David 26 Dec 2004
|
||
- If a project is suspended via GUI,
|
||
don't to any scheduler RPCs or master URL fetches for it
|
||
|
||
client/
|
||
cs_scheduler.C
|
||
|
||
David 26 Dec 2004
|
||
- Code cleanup in db_purge.C
|
||
|
||
sched/
|
||
db_purge.C
|
||
|
||
David 27 Dec 2004
|
||
- Add a -min_age_days N option to db_purge.
|
||
It will only purge WUs whose mod_time is at least N days ago.
|
||
- Change an index on workunit to make this efficient
|
||
- have setup_project.py copy db_purge
|
||
|
||
Note: if you use this version of db_purge you should modify
|
||
the index workunit.wu_filedel.
|
||
You can do this manually or using html/ops/db_update.php
|
||
|
||
db/
|
||
constraints.sql
|
||
html/ops/
|
||
db_update.php
|
||
lib/
|
||
util.C,h
|
||
py/Boinc/
|
||
setup_project.py
|
||
sched/
|
||
db_purge.C
|
||
|
||
David 27 Dec 2004
|
||
- small fixes
|
||
|
||
html/inc/
|
||
uotd.inc
|
||
sched/
|
||
db_purge.C
|
||
|
||
David 27 Dec 2004
|
||
- user web: apply process_user_text() to login text
|
||
- upgrade --help now works
|
||
|
||
html/
|
||
inc/
|
||
util_ops.inc
|
||
ops/
|
||
profile_screen_action.php
|
||
profile_screen_form.php
|
||
user/
|
||
login_action.php
|
||
tools/
|
||
upgrade
|
||
|
||
David 27 Dec 2004
|
||
- UNIX app graphics: if glutInit() fails, keep retrying periodically
|
||
(in case user runs X server, e.g.)
|
||
- scheduler: scan the work array from a random point,
|
||
instead of always from the start.
|
||
This prevents a result from getting stuck at the end
|
||
of the array, and possibly never getting sent.
|
||
(from Ben Herndon)
|
||
|
||
api/
|
||
x_opengl.C
|
||
lib/
|
||
util.h
|
||
sched/
|
||
main.C
|
||
sched_send.C
|
||
|
||
David 27 Dec 2004
|
||
- web fixes from Eric Myers
|
||
|
||
html/inc
|
||
cache.inc
|
||
forum.inc
|
||
|
||
Bruce 28 Dec 2004
|
||
- fixes from Reinhard Prix to disable building of boincglut under
|
||
Darwin/Unix. It's only needed under Windows. Also warn user if
|
||
GLUT libraries missing, and then build only non-graphical client
|
||
side code.
|
||
|
||
Makefile.am
|
||
configure.ac
|
||
api/
|
||
Makefile.am
|
||
|
||
Bruce 29 Dec 2004
|
||
- make X/Unix graphics not fail if GLUT calls abort(3). This
|
||
generated a SIGARBT. We now catch this signal. In the
|
||
graphics thread, this just restarts the graphics init process
|
||
(with some sleep(2)ing if needed to prevent a busy fail loop).
|
||
If the signal is caught in the main thread, we restore the old
|
||
signal handler then raise(SIGABRT).
|
||
|
||
David, note that when run standalone, killing the graphics
|
||
window does NOT kill the process. I think this is fine, but
|
||
it doesn't correspond to what the documentation says.
|
||
|
||
Added hyperlink to WUs on ops pages (Hyperlink to WUs. Thanks
|
||
to Christian (DjangoFett@gmx.net).
|
||
|
||
api/
|
||
x_opengl.C
|
||
html/
|
||
inc/
|
||
db_ops.inc
|
||
|
||
David 29 Dec 2004
|
||
- (from James Drews) Add a "don't request more work" request for projects.
|
||
Inhibits requesting more work,
|
||
but allows completion and reporting of work to continue.
|
||
Added a GUI RPC to do this,
|
||
and also a menu command in the old Win GUI.
|
||
Implemented using a boolean in PROJECT
|
||
(saved/restored in client_state.xml)
|
||
- Removed win_config.h and win-config.h.
|
||
Put all "#ifdef HAVE_*" constructs inside #ifndef _WIN32
|
||
Include version.h to get BOINC_MAJOR_VERSION etc.
|
||
|
||
Now - what exactly are the roles of client/cpp.h and boinc_win.h???
|
||
|
||
win_config.h (removed)
|
||
api/
|
||
boinc_api.C
|
||
client/
|
||
client_types.C,h
|
||
cpp.h
|
||
cs_scheduler.C
|
||
gui_rpc_server.C
|
||
win/
|
||
boinc_cli.rc
|
||
boinc_dll.rc
|
||
boinc_gui.h,rc
|
||
boinc_ss.rc
|
||
wingui_mainwindow.cpp,h
|
||
lib/
|
||
gui_rpc_client.C,h
|
||
gui_test.C
|
||
mem_usage.C
|
||
win_build/
|
||
config.h
|
||
win-config.h (removed)
|
||
|
||
David 29 Dec 2004
|
||
- (from Reinhard Prix)
|
||
X app graphics: check that a window actually has been opened
|
||
prior to calling glutMainLoop()
|
||
(just waiting for a message is not enough -
|
||
the message might be REREAD_PREFS)
|
||
|
||
api/
|
||
x_opengl.C
|
||
|
||
Bruce 30 Dec 2004
|
||
|
||
- When creating large numbers of WU which have large input files,
|
||
the cost of computing the md5 sums becomes expensive. Inserted
|
||
a simple caching mechanism into the utility function
|
||
process_wu_template(). For a given filename FILENAME, this looks
|
||
for a file called FILENAME.md5, which contains the md5sum and
|
||
length. If the file exists, these values are used. If not, such
|
||
a file is created. Since (I think) David is planning to have a
|
||
database for files, this mechanism will eventually be obsolete.
|
||
Right now it disabled by default. Use -DBOINC_CACHE_MD5 to
|
||
enable it.
|
||
|
||
tools/
|
||
backend_lib.C
|
||
|
||
Bruce 31 Dec 2004
|
||
|
||
- Some improvements on the md5-info caching. If the 'data' file is
|
||
more recent than the 'md5info', then ignore md5info. If md5info
|
||
has *exactly* the right format (no extra or missing characters) then
|
||
remove it in this case (only). Don't write an md5info file if
|
||
another file is found with the same name. Thus if someone has two
|
||
data files called X and X.md5, unless X.md5 has the exact correct
|
||
syntax for an md5-info cache file, it won't be removed or used.
|
||
Still disabled by default. Use -DBOINC_CACHE_MD5 to enable it.
|
||
|
||
- Improvements to ops/ pages, from Christian Beer. Show all fields of
|
||
WU. Display status summaries based on mod-times.
|
||
|
||
- Make 'grep logs' function assume default of *.log for filenames, unless
|
||
specified.
|
||
|
||
tools/
|
||
backend_lib.C
|
||
html/
|
||
inc/
|
||
db_ops.inc
|
||
util.inc
|
||
ops/
|
||
show_log.php
|
||
|
||
|