[issue14134] xmlrpc.client.ServerProxy needs timeout parameter

Andrej A Antonov report at bugs.python.org
Tue Dec 16 05:11:35 CET 2014


Andrej A Antonov added the comment:

@demian.brecht , socket.setdefaulttimeout([timeout]) -- it is bad practice, because setting this global varible we may spoil other cases. example "TCP keepalive" [ s.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, true) ]

and global variables is bad practice for other things.

and again -- compare what shorter (and what more clear):

        proxy = ServerProxy('http://example.com/gateway/', transport=Transport(
            connection_factory=lambda h: HTTPConnection(h, timeout=42)))

    or

        proxy = ServerProxy('http://example.com/gateway/', timeout=42)

> There should be one-- and preferably only one --obvious way to do it.". Having a timeout at the top level ServerProxy object introduces ambiguity and therefore doesn't conform

if you NOT point timeout in "RPC-client" -- you program will freeze or will maked resource leak (with small probability).

"RPC-client" and "timeout" -- these two concepts are inseparable!

you are allowed *NOT_using* "timeout" in "RPC-client" -- *ONLY* in *localhost* operations!

----------

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue14134>
_______________________________________


More information about the Python-bugs-list mailing list