[issue24755] asyncio.wrap_future undocumented

2015-09-30 Thread Andrej A Antonov

Changes by Andrej A Antonov <polymor...@gmail.com>:


--
nosy: +polymorphm

___
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue24755>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14134] xmlrpc.client.ServerProxy needs timeout parameter

2014-12-16 Thread Andrej A Antonov

Andrej A Antonov added the comment:

I just will write next code-fragment:

import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM, socket.IPPROTO_TCP)
s.connect(('python.org', 80))
print(
'is my operation system using (by default) tcpkeepalive-algorithm 
for testing broken-connection? answer:',
s.getsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE)
)
# answer is 0 (false) -- for all GNU/Linux


my previous code-example has 100-iteration -- only for we could catch the 
right-moment when testing (and for nothing else).

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14134
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14134] xmlrpc.client.ServerProxy needs timeout parameter

2014-12-16 Thread Andrej A Antonov

Andrej A Antonov added the comment:

 in GNU/Linux system timeout has been reached -- means that  system timeout 
 will *never* reached.

 That's quite likely because the system limits may be very large.

I tested system-timeout GNU/Linux (on various computers). I waited more then 5 
days. system-timeout works on GNU/Linux -- only if was custom-set tcpkeepalive, 
else (by default): even after 5 days system-timeout was not reached.

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14134
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14134] xmlrpc.client.ServerProxy needs timeout parameter

2014-12-16 Thread Andrej A Antonov

Andrej A Antonov added the comment:

@demian.brecht , for high probably to catch *infinite_freeze* (at GNU/Linux) -- 
if we may will run requests of xmlrpc.client.ServerProxy -- parallely:


(when running next code -- need to make some network-disconnections on 
network-router-computer)



#!/usr/bin/env python3

import threading
from xmlrpc.client import ServerProxy

ITERATION_COUNT = 100
THREAD_COUNT = 100

def thread_func(thread_name):
for i in range(ITERATION_COUNT):
try:
server = ServerProxy(http://betty.userland.com;)
rpc_result = server.examples.getStateName(41)
print('{}/iter_{} {!r}'.format(thread_name, i, rpc_result))
except Exception as e:
print('{}/iter_{} error: {} {}'.format(thread_name, i, type(e), 
str(e)))

def main():
print('* testing begin *')

thread_list = []

for i in range(THREAD_COUNT):
thread_name = 'thread_{}'.format(i)
thread_list.append(threading.Thread(target=thread_func, 
args=(thread_name,)))

for thr in thread_list:
thr.start()

for thr in thread_list:
thr.join()

print('* testing end *')

if __name__ == '__main__':
main()

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14134
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14134] xmlrpc.client.ServerProxy needs timeout parameter

2014-12-16 Thread Andrej A Antonov

Andrej A Antonov added the comment:

good patch (issue14134.patch) ! thanks!

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14134
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14134] xmlrpc.client.ServerProxy needs timeout parameter

2014-12-15 Thread Andrej A Antonov

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 rep...@bugs.python.org
http://bugs.python.org/issue14134
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14134] xmlrpc.client.ServerProxy needs timeout parameter

2014-12-15 Thread Andrej A Antonov

Andrej A Antonov added the comment:

ok, let's go to other side of this problem:

question: why default transport (xmlrpc.client.Transport()) is not setting 
value of timeout?``

answer: because *unknown* which value need to using by default.

in various cases programmer need various timeout. default value of timeout for 
default transport -- what may be this number?

may be value 300 for timeout of default transport (xmlrpc.client.Transport()) 
may be normal in *most_cases*. but this will brake legacy soft that using 
socket.setdefaulttimeout(...)

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14134
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14134] xmlrpc.client.ServerProxy needs timeout parameter

2014-12-15 Thread Andrej A Antonov

Andrej A Antonov added the comment:

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

 Assuming a lack of concurrency, your program will indeed freeze until the 
 system timeout has been reached. I'm not sure about a leak. If you have an 
 example of such a case, it would likely be a good candidate for a new issue.

I do not know how behavior in Microsoft Windows...

in GNU/Linux system timeout has been reached -- means that  system timeout 
will *never* reached.

you may easy to test this (to make this test -- we need using: 
client-computer and network-router-computer):




step 1. run next code on client-computer (GNU/Linux):

$ python3
 from xmlrpc.client import ServerProxy
 server = ServerProxy(http://betty.userland.com;)
 for _ in range(100): print(server.examples.getStateName(41))

step 2: to broke network in network-router-computer.

step 3: wait some minutes. example 60 minutes.

step 4: to repear netework in network-router-computer.

step 5: we will see, that program on client-computer will freeze *forever*. 
system timeout will *never* reached. even after some days -- system timeout 
will not reached. :-)



 it would likely be a good candidate for a new issue.

yes, may be we need new issue-ticket?

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14134
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14134] xmlrpc.client.ServerProxy needs timeout parameter

2014-12-14 Thread Andrej A Antonov

Andrej A Antonov added the comment:

@demian.brecht , your example code-fragment is too big. :-)

too many lines -- just only for adding timeout. it is uncomfortably.

most people will not using that: most likely they just will forget about 
timeout (but in *MOST* situations not using timeout -- it is mistake).

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14134
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue21356] Support LibreSSL (instead of OpenSSL): make RAND_egd optional

2014-10-01 Thread Andrej A Antonov

Changes by Andrej A Antonov polymor...@gmail.com:


--
nosy: +polymorphm

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue21356
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14134] xmlrpc.client.ServerProxy needs timeout parameter

2012-05-17 Thread Andrej A Antonov

Andrej A Antonov polymor...@gmail.com added the comment:

Jeff McNeil (mcjeff) I would think it might make more sense just to make the 
change to the Transport object. Since there's an argument for a transport on 
ServerProxy already, that seems more straightforward and keeps the network 
layer isolated.

in theoretical-side -- this layer isolation may be good and clean.

but in practical-side -- situation is next:

there are 3 alternative-variants of using timeout parameter in XMLRPC-Client:

situation 1. programmer (who makes script or program) -- using XMLRPC-Client 
*WITH* timeout parameter, because timeout parameter should be using in his 
program. program runs in regular environment.

situation 2. programmer (who makes script or program) -- using XMLRPC-Client 
*WITHOUT* timeout parameter, because XMLRPC-connection runs in localhost 
environment.

situation 3. programmer (who makes script or program) -- using XMLRPC-Client 
*WITHOUT* timeout parameter, because he makes mistake.

situation 1 -- very often. (or must be very often).

situation 2 -- very rare.

situation 3 -- leads to possible cases of freezing program/script or 
resource-leak.

if we will try to hide timeout parameter (in other layer), then situation 3 
will be more than situation 1

# p.s.: sorry for my bad english

--

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14134
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14134] xmlrpc.client.ServerProxy() -- need for timeout-parameter

2012-02-28 Thread Andrej A Antonov

Andrej A Antonov polymor...@gmail.com added the comment:

in this subject -- I think about like this changes (see file 
example-of-changes.patch)

--
keywords: +patch
Added file: http://bugs.python.org/file24675/example-of-changes.patch

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14134
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue14134] xmlrpc.client.ServerProxy() -- need for timeout-parameter

2012-02-26 Thread Andrej A Antonov

New submission from Andrej A Antonov polymor...@gmail.com:

good day!

xmlrpc.client.ServerProxy() -- not has timeout-parameter

xmlrpc.client.Transport() and xmlrpc.client.SafeTransport() -- not has 
timeout-parameter too

but http.client.HTTPConnection() and http.client.HTTPSConnection() -- has 
timeout-parameter

--
components: Library (Lib)
messages: 154409
nosy: polymorphm
priority: normal
severity: normal
status: open
title: xmlrpc.client.ServerProxy() --  need for timeout-parameter
type: enhancement
versions: Python 2.7, Python 3.3

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue14134
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com