size so that a scroll bar will appear if the number of items
exceeds the space to display them. Fixes#96
clientgui/
DlgOptions.cpp
svn path=/trunk/boinc/; revision=17519
operation when starting up or shutting down the client. Increase
the frequency of the auto-save state timer from 5 minutes to
5 seconds. Fixes#69, Fixes#735, Fixes#790,
- MGR: Lengthen the connected to client status field. Fixes#632
- MGR: Properly update the connected to client status field
even after a change to the simple view. Fixes#688
clientgui/
AdvancedFrame.cpp
sg_BoincSimpleGUI.cpp, .h
svn path=/trunk/boinc/; revision=17516
master url in the response to the get_project_config.php
request. If it exists use it over what was specified
by the user. Fixes#259
clientgui/
AccountManagerProcessingPage.cpp
ProjectProcessingPage.cpp
svn path=/trunk/boinc/; revision=17513
to a get_project_config.php request. It was causing the
wizards to throw a temp unavailable error page instead
of the not a boinc project page. Fixes#640
clientgui/
AccountManagerPropertiesPage.cpp
ProjectPropertiesPage.cpp
svn path=/trunk/boinc/; revision=17512
to projects detection code.
- MGR: Prevent the user from progressing beyond the project
selection page if they are already attached to the
project they are trying to attach to. Display a dialog
box telling they are already attached to that project
and to choose a different project. This skips a bunch
of steps if they meant to attach to a different project.
clientgui/
AlreadyAttachedPage.cpp, .h
BOINCWizards.h
ProjectInfoPage.cpp
ProjectPropertiesPage.cpp, .h
WizardAttachProject.cpp, .h
win_build/
boincmgr_curl.vcproj
svn path=/trunk/boinc/; revision=17511
Otherwise, if an app version has a platform different from
the client's primary platform, the client won't find it.
svn path=/trunk/boinc/; revision=17508
app versions in scheduler reply
- client: when reporting anonymous platform apps in sched request,
don't include <file_info>s (not relevant to server)
svn path=/trunk/boinc/; revision=17507
Old: although the request message contained all info
about the app version (flops, coproc usage etc.)
the server ignored this info,
and assumed that all anonymous platform apps where CPU.
With 6.6 client, this could produce infinite work fetch:
- client uses anon platform, has coproc app
- client has idle CPU, requests CPU work
- scheduler sends it jobs, thinking they will be done by CPU app
- client asks for more work etc.
New: scheduler parses full info on anon platform app versions:
plan class, FLOPS, coprocs.
It uses this info to make scheduling decisions;
in particular, if the request is for CUDA work,
if will only send jobs that use a CUDA app version.
The <result> records it returns contain info
(plan_class) that tells the client which app_version to use.
This will work correctly even if the client has multiple app versions
for the same app (e.g., a CPU version and a GPU version)
svn path=/trunk/boinc/; revision=17506
when to do a scheduler RPC:
if user request or acct mgr request, ignore backoff and suspend via GUI;
in all other cases honor both of these.
svn path=/trunk/boinc/; revision=17504
when to do a scheduler RPC:
if user request or acct mgr request, ignore backoff and suspend via GUI;
in all other cases honor both of these.
svn path=/trunk/boinc/; revision=17503
Otherwise we'll get stuck in a loop where the client asks for CPU work,
and the scheduler sends jobs for what it thinks is a CPU app
but is actually a coproc app.
Eventually we should add coproc info to the app descriptions
send in scheduler request,
so that you can use anonymous platform for coproc apps.
But let's wait on this.
- scheduler: compile fix for gcc 4.4. Fixes#854
svn path=/trunk/boinc/; revision=17502
old: reference-count files involved in a PERS_FILE_XFER
new: if a PERS_FILE_XFER refers to an unreferenced file,
delete it (and the associated FILE_XFER and HTTP_OP if present)
May fix#366
svn path=/trunk/boinc/; revision=17486
other than work fetch (e.g., user request, project request)
temporarily clear resource backoffs while deciding
whether to request work.
The backoffs are there only to delay RPCs,
and we're going an RPC anyway.
svn path=/trunk/boinc/; revision=17416
to ask for work inappropriately,
and tell user that it wasn't asking for work.
Here's what was going on:
There are two different structures with work request fields
(req_secs, req_instances, estimated_delay):
COPROC_CUDA *coproc_cuda
and
RSC_WORK_FETCH cuda_work_fetch.
WORK_FETCH::choose_project() copied from cuda_work_fetch to coproc_cuda,
but only if a project was selected.
WORK_FETCH::clear_request() clears cuda_work_fetch but not coproc_cuda.
Scenario:
- a scheduler op is made to project A requesting X>0 secs of CUDA
- later, a scheduler op is made to project B for reason
other than work fetch (e.g., user request)
- choose_project() doesn't choose anything,
so the value of coproc_cuda->req_secs remains X
- clear_request() is called but that doesn't change *coproc_cuda
Solution: work-fetch code no longer knows about internals of
COPROC_CUDA and is not responsible for settings its request fields.
The copying of request fields from RSC_WORK_FETCH to COPROC
is done at a higher level,
in CLIENT_STATE::make_scheduler_request()
Additional bug fix: estimated_delay wasn't being cleared in some cases.
svn path=/trunk/boinc/; revision=17411