Commit Graph

610 Commits

Author SHA1 Message Date
David Anderson 4466458c80 remove -lpthread from api/Makefile.am; fix example_app build error 2014-01-17 11:23:17 -08:00
Rom Walton 9ad318d0bd VBOX: Remove extra line feed. 2014-01-16 23:34:31 -05:00
Rom Walton b8db18d5ee VBOX: Dump the guest log on completion. It may contain useful information whether the VM completed successfully or not. 2014-01-16 23:32:42 -05:00
David Anderson 01b78c714a Remote job submission: allow efficient batch query
The batch query call used by Condor (query_batch_set(), in the C++ API)
returned info about all the jobs in the set of batches,
even those that hadn't changed.
This is potentially inefficient - a query might return info
about 10,000 jobs, only a few (or none) of which have changed state
since the last call.

Solution: add a "min_mod_time" parameter to the call.
Only jobs that have changed state since that time are reported.
Also, add a "server_time" field to the return,
giving the current time on the server
(in case there's clock skew between client and server)

Also, fix some text scrambling introduced in previous checkin;
there must have been a gremlin in my vim.
2014-01-16 10:24:10 -08:00
Rom Walton be4c61140e VBOX: Treat ERR_TIMEOUT in is_registered() as an explicit case and do not log additional error output. 2014-01-16 12:32:38 -05:00
Rom Walton d93d565b2f VBOX: Gracefully handle the ERR_TIMEOUT error when attempting to detect the VM. is_registered() is no longer a bool where a ERR_TIMEOUT is treated as a false by default. Reschedule the job to be re-run in 5 minutes. 2014-01-16 11:54:06 -05:00
Rom Walton 2bef903f90 VBOX: When extracting the tail end of logs, only grab the last 8k of the RAW data before fixing it up instead of the whole thing. Fixes a CPU util issue. 2014-01-15 23:14:51 -05:00
Rom Walton 1bb1c517bc VBOX: Choose a reasonable default VM state for when vboxwrapper starts to monitor the VM state changes. 2014-01-15 16:24:30 -05:00
Rom Walton 493f49eeca VBOX: Restore code that was prematurely removed. I need to remove it when I start manually launching vboxheadless.exe/virtualbox.exe. 2014-01-15 15:17:44 -05:00
Rom Walton 13442e2fe1 VBOX: Remove unneeded error message from the log. 2014-01-15 14:48:05 -05:00
Rom Walton 68b01e4101 VBOX: Only print the process priority messages if we actually tweak them. 2014-01-15 14:27:44 -05:00
Rom Walton 5e4743b086 VBOX: Give a visual indication when we tweak the VM process priority for one reason or another. 2014-01-15 14:24:50 -05:00
Rom Walton 6466368c17 VBOX: Revise the get_vm_process_id() function to use the get_vm_log() function instead of vboxmanage.exe. 2014-01-15 14:11:37 -05:00
Rom Walton 35a71524e6 VBOX: Read the VM log file directly instead of relying on vboxmanage.exe to read the log file. Vboxmanage.exe can take awhile to establish a connection to vboxsvc.exe when the machine is under load. 2014-01-15 13:55:38 -05:00
Rom Walton 64f4b80700 VBOX: If we fail to successfully restore from snapshot, end the currently executing vbox job.
A temp exit will just leave the VM in an inconsistent state and we do not know what the checkpoint and drive configuration will be the next time the VM is successfully started.
2014-01-15 13:36:45 -05:00
Rom Walton e937368db7 VBOX: Check for the error condition in is_registered() before the success condition. 2014-01-15 13:25:53 -05:00
Rom Walton 932cdbf84f VBOX: When checking to see if a VM is registered, take into account the return value of vboxmanage. 2014-01-15 12:59:27 -05:00
Rom Walton 5e92b6c7d7 samples: Create a custom DLL for debugging DLL search path issues. Hook it up to the example app. 2014-01-15 12:01:00 -05:00
David Anderson 217ad5ae5d client: if app doesn't report fraction done, estimate fraction done in a way that converges to but never reaches 100%. 2014-01-15 01:03:48 -08:00
David Anderson 939f912b4c translation update 2014-01-10 00:12:31 -08:00
Rom Walton f07517a6ef Merge branch 'master' of ssh://isaac.ssl.berkeley.edu/boinc-v2 2014-01-09 15:35:30 -05:00
Rom Walton 9b85ac19ef samples: Add skeleton for zlib compression to sample app to test search path issues on Windows. It is not fully implemented. 2014-01-09 15:35:17 -05:00
David Anderson d861862ca1 server: fix compile warnings and file descriptor leaks
Also, we were using memset() to zero WORK_REQ,
which contains several std::vector's.
This apparently works on Linux, but not in general.
2014-01-08 22:00:13 -08:00
Rom Walton 652107692d VBOX: Fix the message prefix for some of the newly created log messages. 2013-12-16 16:27:55 -05:00
Rom Walton 27d3762f7f VBOX: If neither of the two cases we expect to see when we look to see if the VM is registered exists, we should dump out the input, output, and return value of vboxmanage. 2013-12-16 13:22:10 -05:00
Rom Walton 78e0641598 VBOX: Add text descriptions for the VM states we know about. Previously we only logged unknown states. 2013-12-16 12:54:37 -05:00
Rom Walton 31f0b89e55 VBOX: If we fail to successfully launch the VM, log out the VM state that VboxSvc believes it is before exiting entirely. 2013-12-16 12:49:09 -05:00
Rom Walton a90215ab50 VBOX: Attempt to prevent out of control checkpointing by temporarily exiting the task and letting BOINC clean-up the environment. When BOINC restarts the task it should be able to restore from a previously good snapshot and resume execution. 2013-12-16 12:44:05 -05:00
Rom Walton b85054c78e VBOX: Change the VM CPU extension error back to ERR_EXEC, it was changed to ERR_TIMEOUT after the previous update. 2013-12-16 12:32:12 -05:00
Rom Walton a54597d91d VBOX: Spelling police. 2013-12-12 16:14:16 -05:00
Rom Walton 87e2bf135d VBOX: Add a wait loop to the stop()/poweroff() functions that wait for the desired VM state change before leaving the function. 2013-12-12 14:48:29 -05:00
Rom Walton f3b2e977ef VBOX: If another hypervisor locks the CPU Acceleration extensions, temp delay for a day instead of aborting the task. 2013-12-12 11:14:26 -05:00
Rom Walton a01aec4ffb VBOX: Increase the task reschedule interval for communication failures from 5 minutes to 1 day. 2013-12-12 11:03:52 -05:00
Rom Walton 5ee889071d VBOX: Add explicit log entries for reasons why is_system_ready() returned false instead of just bubbling up the message to the BOINC Manager. 2013-12-12 10:57:52 -05:00
Rom Walton 0994a59c93 VBOX: Remove previous commit, it wasn't going to work as intended. 2013-12-12 10:50:55 -05:00
Rom Walton 3bbac4ed94 VBOX: Wait for up to 5 minutes for restoring from checkpoint to complete before continuing on. 2013-12-12 10:45:51 -05:00
Rom Walton 2b7e8b2790 VBOX: Do not exit start() until after the VM is online and NOT restoring from snapshot.
VBOX: Remove the restriction on log size for the time being.

It gives us a better chance of detecting the Process ID of vboxsvc.  I need to switch over to using procinfo facilities.
2013-12-12 10:34:49 -05:00
Rom Walton f2183fe8e3 VBOX: Bug fixes to previous commits 2013-12-11 18:33:18 -05:00
Rom Walton 4046939336 VBOX: Remove unneeded logging statements 2013-12-11 17:45:44 -05:00
Rom Walton 99c7d486db VBOX: Do not attempt to start vboxsvc.exe if it is already running. Just grab a handle to the existing process and monitor it. 2013-12-11 17:11:18 -05:00
Rom Walton 61a4e076e0 VBOX: Show the proper elapsed time in the stderr output. 2013-12-11 09:42:37 -05:00
Rom Walton a4d52163ae WINBUILD: Update vboxwrappers version to 26054 2013-12-11 00:17:36 -05:00
Rom Walton da2f41f3ab VBOX: For some reason VirtualBox is forgetting about previously registered VMs after a few days of running. Add an attempt to recover from the situation by attempting to re-register the existing machine configuration file. 2013-12-11 00:02:57 -05:00
Rom Walton 8541192a99 VBOX: Text change 2013-12-10 19:39:18 -05:00
David Anderson 6d4999767f example app: print "starting" message after boinc_init, so that it appears in stdferr file
Also remove old score-based sched code
2013-12-10 14:00:31 -08:00
Rom Walton 8225ebab5d VBOX: In cases where the volunteer needs to upgrade BOINC in order to support hardware acceleration reschedule execution for a day into the future. 2013-12-09 13:28:42 -05:00
Rom Walton ea56993093 VBOX: When disabling hardware acceleration because of legacy support, write that to stderr and suggest that the volunteer upgrade to BOINC 7.2. 2013-12-06 13:22:17 -05:00
Rom Walton a6da437c5c VBOX: Do not log about missing snapshots during cleanup
VBOX: Only log about relevant settings during a status report
VBOX: County an empty output response in is_system_ready() query as a failure.
2013-12-06 12:05:11 -05:00
Rom Walton 19d4b880de VBOX: Include filename(version by proxy) in startup output. 2013-12-04 17:25:05 -05:00
Rom Walton 129087c1f2 VBOX: Give the BOINC API a few seconds to inform the client about the pid before calling boinc_temporary_exit(). 2013-12-04 14:47:33 -05:00