Thread 'Abort time period'

Message boards : BOINC client : Abort time period
Message board moderation

To post messages, you must log in.

AuthorMessage
cjreyn

Send message
Joined: 17 Aug 09
Posts: 19
United Kingdom
Message 32408 - Posted: 26 Apr 2010, 17:14:36 UTC

Hi guys, just a quick one. When Boinc sends an abort request, I have a finite time to handle this in my application. How/where is this value defined, and can I change it on a per application basis?

Cheers

Chris
ID: 32408 · Report as offensive
ProfileJord
Volunteer tester
Help desk expert
Avatar

Send message
Joined: 29 Aug 05
Posts: 15585
Netherlands
Message 32410 - Posted: 26 Apr 2010, 20:58:35 UTC - in response to Message 32408.  

Not in the client, when it gets the abort job message from the server (on a scheduled contact), it'll delete the job immediately if it hasn't started it yet.

Project Options, <send_result_abort>0|1</send_result_abort>
ID: 32410 · Report as offensive
cjreyn

Send message
Joined: 17 Aug 09
Posts: 19
United Kingdom
Message 32413 - Posted: 27 Apr 2010, 12:59:02 UTC - in response to Message 32410.  

The problem here is for running WU's. Boinc will send an abort message before it kills a WU, e.g. due to it exceeding resource reservation limits. I have approx 2 secs to ensure that any processes I launch (I'm using some win32 CreateProcess functions) die. If I don't kill the processes in time, Boinc fails to clean the slot dir, since the files it tries to delete are in use by an active process.

This 2 sec timeout is too tight, and I was wondering how to change it?
ID: 32413 · Report as offensive
ProfileJord
Volunteer tester
Help desk expert
Avatar

Send message
Joined: 29 Aug 05
Posts: 15585
Netherlands
Message 32414 - Posted: 27 Apr 2010, 13:38:33 UTC - in response to Message 32413.  

You could try to run with the BOINC command line switches, mainly the exit_after_* ones. This will exit the client at any of the given switches, but you ought to be able to put that into a batch file or script, so the client restarts again after so many seconds.

If you know how long it takes (approximately) for your app to reach the resource exceeding limits, you can use the --exit_after_app_start N option, where N is the amount of seconds this application should run before the client is exited.
ID: 32414 · Report as offensive
cjreyn

Send message
Joined: 17 Aug 09
Posts: 19
United Kingdom
Message 32415 - Posted: 27 Apr 2010, 14:01:18 UTC - in response to Message 32414.  

Mmm, restarting the client is not really an option... Its running as a service deployed using ZenWorks (tricky to script), and there may be other WU's running which will be cancelled if the client exits. Surely the timeout is a const variable in the source? So if I recompile the client I can change this?
ID: 32415 · Report as offensive
ProfileJord
Volunteer tester
Help desk expert
Avatar

Send message
Joined: 29 Aug 05
Posts: 15585
Netherlands
Message 32416 - Posted: 27 Apr 2010, 14:44:47 UTC - in response to Message 32415.  

Yes, but the problem is that you first have to find out which file or files you have to edit for that and which strings do it. I've just checked a little through the source code and I can't find it that quickly.

I'll ask one of the developers to come by this thread. Might be easier. :-)
ID: 32416 · Report as offensive
ProfileDavid Anderson
Volunteer moderator
Project administrator
Project developer
Avatar

Send message
Joined: 10 Sep 05
Posts: 728
Message 32418 - Posted: 27 Apr 2010, 16:47:51 UTC

The timeout value is ABORT_TIMEOUT in app.cpp.
It's currently set to 60 seconds.
ID: 32418 · Report as offensive

Message boards : BOINC client : Abort time period

Copyright © 2025 University of California.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.