0

I've got a connection setup between two PCs using Pyro4, most of the time everything is working seamlessly, however sometimes I can get random TimeoutError like this:

    result = self.pyro_proxes[pyro_proxy_name].run_on_pool_controller(*args, **kwargs)
      File "/opt/ute/python/lib/python2.7/site-packages/Pyro4/core.py", line 171, in __call__
return self.__send(self.__name, args, kwargs)
      File "/opt/ute/python/lib/python2.7/site-packages/Pyro4/core.py", line 410, in _pyroInvoke
        msg = message.Message.recv(self._pyroConnection, [message.MSG_RESULT], hmac_key=self._pyroHmacKey)
      File "/opt/ute/python/lib/python2.7/site-packages/Pyro4/message.py", line 168, in recv
        msg = cls.from_header(connection.recv(cls.header_size))
      File "/opt/ute/python/lib/python2.7/site-packages/Pyro4/socketutil.py", line 438, in recv
return receiveData(self.sock, size)
      File "/opt/ute/python/lib/python2.7/site-packages/Pyro4/socketutil.py", line 149, in receiveData
        raise TimeoutError("receiving: timeout")

At first I tought this might be some network related issues, however I checked with ping process in background, and connection is never lost between PCs. I can't really find anything in Pyro documentation about it.

RaStall
  • 55
  • 1
  • 4
  • it is definitely not a network error because network errors starts with 50x. – Madhur Yadav May 13 '19 at 14:50
  • Make sure you have given the correct read/write permission and firewall permissions – Madhur Yadav May 13 '19 at 14:51
  • @MadhurYadav this can't be the case, connection is working most of the time without any problems. – RaStall May 13 '19 at 14:54
  • @MadhurYadav we're not talking about HTTP here at all, that comment about error codes 50x makes no sense. Pyro has its own wire protocol that runs over raw socket connections. – Irmen de Jong May 13 '19 at 21:17
  • @RaStall enable Pyro logging and check the log files. Especially the one on the server. It could be that the server's thread pool is exhausted. Or there's a programming error that makes the operation take too long. Have you enabled Pyro's timeout setting by any chance? – Irmen de Jong May 13 '19 at 21:20
  • @IrmendeJong Yes, i have COMMTIMEOUT set in config to 2 minutes, however operations that are causing this TimeoutError should never take more than 10 seconds to execute. I will turn on logging, and check log files, as proposed – RaStall May 14 '19 at 10:48

0 Answers0