RPC_REASON_PROJECT_REQ ... whatfor ???

Message boards : BOINC client : RPC_REASON_PROJECT_REQ ... whatfor ???
Message board moderation

To post messages, you must log in.

AuthorMessage
Profile Ananas

Send message
Joined: 27 Jun 06
Posts: 305
Germany
Message 20662 - Posted: 4 Oct 2008, 21:13:36 UTC
Last modified: 4 Oct 2008, 21:24:32 UTC

WCG makes the attached computers contact the project every now and then, even if the project is out of work and set to no new work for weeks already.

Why can a project decide, when my core client makes a contact, even if there is no server interaction required?


I don't know yet, wether the core client will respect a suspend, it is the next thing I will try.


p.s.: I checked the logs, the WCG contact happened every 4 days :

13-Sep-2008 08:48:49 [World Community Grid] Sending scheduler request: Requested by project. Requesting 0 seconds of work, reporting 0 completed tasks
17-Sep-2008 08:48:58 [World Community Grid] Sending scheduler request: Requested by project. Requesting 0 seconds of work, reporting 0 completed tasks
21-Sep-2008 08:49:08 [World Community Grid] Sending scheduler request: Requested by project. Requesting 0 seconds of work, reporting 0 completed tasks
... and so on ...
ID: 20662 · Report as offensive
Profile Ananas

Send message
Joined: 27 Jun 06
Posts: 305
Germany
Message 20663 - Posted: 4 Oct 2008, 21:41:12 UTC - in response to Message 20662.  

Additional information ... the scheduler reply always contains this :

scheduler_version>601</scheduler_version>
<master_url>http://www.worldcommunitygrid.org/</master_url>
<request_delay>61.000000</request_delay>
<project_name>World Community Grid</project_name>
<next_rpc_delay>345600.000000</next_rpc_delay>


345600 seconds are those 4 days.

I hope this turns out to be a server side bug and not to be intentional :-/
ID: 20663 · Report as offensive
Profile Jord
Volunteer tester
Help desk expert
Avatar

Send message
Joined: 29 Aug 05
Posts: 15477
Netherlands
Message 20665 - Posted: 4 Oct 2008, 22:02:56 UTC - in response to Message 20662.  

Why can a project decide, when my core client makes a contact, even if there is no server interaction required?

Possibly to update your RAC and Credit standings in your BOINC Manager? Or to check if you're up-to-date on all its files? I don't know. Wrong place to ask as well, you best ask this at the WCG forums. They're better equipped to answer that.
ID: 20665 · Report as offensive
Profile Ananas

Send message
Joined: 27 Jun 06
Posts: 305
Germany
Message 20666 - Posted: 4 Oct 2008, 22:34:24 UTC - in response to Message 20665.  
Last modified: 4 Oct 2008, 22:35:30 UTC

... Wrong place to ask as well, you best ask this at the WCG forums. They're better equipped to answer that.


They might be able to explain why the server sends this tag in a scheduler reply - but here would be the place to make the stock core client immune to such things.

I assume that WCG does not do that in order to spy on my computers when I don't expect it, or collect informations that they shouldn't have - but it shows that it is possible.
ID: 20666 · Report as offensive
Thyme Lawn

Send message
Joined: 2 Sep 05
Posts: 103
United Kingdom
Message 20670 - Posted: 5 Oct 2008, 8:14:51 UTC
Last modified: 5 Oct 2008, 8:20:12 UTC

next_rpc_delay was added to the server configuration file in BOINC 5.6, specifically to support low-latency computing (minimum period between scheduler requests to cater for work with tight deadlines). It has other uses; for example, guaranteeing that hosts receive notification within a certain period that a task has to be aborted (useful when a project cancels a batch of workunits with long execution times).

And here's the explanation in the WCG presentation at BOINC Workshop 2008

<next_rpc_delay>345600</next_rpc_delay>

There are times when a project makes a mistake and has to cancel workunits or a user shuts down their computer when they go on vacation. In these cases, the work in progress can become unneeded or in the event of a project mistake, useless. Next_rpc_delay ensures that any client with boinc running and a internet connection available will talk to your project again after at most X seconds.

I've checked the client code and next_rpc_delay will send scheduler requests when the project is suspended. The line which would have prevented that has been commented out with the additional comment:

do the RPC even if suspended.
This is critical for acct mgrs, to propagate new host CPIDs

There are arguments for the client not sending a project's periodic scheduler request if the project is suspended or set to no new work and has an empty work queue, but the scheduler might be using the feature for something like tracking the number of active hosts. Ideally another setting in the scheduler configuration file would be required to force clients to skip the periodic request when it's unnecessary.
"The ultimate test of a moral society is the kind of world that it leaves to its children." - Dietrich Bonhoeffer
ID: 20670 · Report as offensive
Profile Ananas

Send message
Joined: 27 Jun 06
Posts: 305
Germany
Message 20671 - Posted: 5 Oct 2008, 9:17:34 UTC - in response to Message 20670.  

Thanks, that helps to understand the intention. This doesn't mean that I like this feature but I can live with it. If it becomes too annoying, I can still detach from the project.
ID: 20671 · Report as offensive

Message boards : BOINC client : RPC_REASON_PROJECT_REQ ... whatfor ???

Copyright © 2024 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.