Hello, I have a problem with an rpyc service, running under a ForkingServer. On the client side, I connect and create a (strong referenced) async wrapper to a method on my remote service. Then I trigger my service via the async wrapper. The invocation returns immediately, but my on the server side, except for a forked process, nothing happens.
Only when I invoke AsyncResult.wait() the server will start executing my request. Below is a part of my server side log. The second field in the log is the process ID. 2011-11-23 15:17:08,217 - 30638 - DSSTESTSERVICE/39876 - INFO - server started on [0.0.0.0]:39876 2011-11-23 15:17:16,027 - 30638 - DSSTESTSERVICE/39876 - INFO - accepted 127.0.0.1:57696 2011-11-23 15:17:16,029 - 30786 - DSSTESTSERVICE/39876 - INFO - welcome [127.0.0.1]:57696 2011-11-23 15:17:16,031 - 30786 - dsstestservice.on_connect - DEBUG - Entering method, pid=(30786) 2011-11-23 15:18:26,384 - 30786 - dsstestservice.write - DEBUG - Entering method ... 2011-11-23 15:18:38,648 - 30786 - dsstestservice.write - DEBUG - Exiting method 2011-11-23 15:19:36,704 - 30786 - dsstestservice.on_disconnect - DEBUG - Entering method, pid=(30786) 2011-11-23 15:19:36,705 - 30786 - DSSTESTSERVICE/39876 - INFO - goodbye [127.0.0.1]:57696 As you can see, the parent rpyc server (pid 30638) is started at 15:17. A few seconds later, I connect to it resulting in the subprocess (30786) and immediately invoke the async wrapper. Then I wait numerous seconds (until 15:18:26 it seems) before I invoke AsyncResult.wait(). Only then does the request end up being executed on the server. I have been spinning my head around this for numerous hours already but as far as I could see from the docs, I'm not doing anything wrong. Please elaborate! Ringo
