Issue1049450
Created on 2004-10-18 17:39 by brauwerman, last changed 2009-04-01 16:21 by jackdied.
|
msg60587 - (view) |
Author: Mike Brauwerman (brauwerman) |
Date: 2004-10-18 17:39 |
|
On Solaris, calls to select.select() and
socket.socket() in telnetlib (and possibly others)
often fail due to unhandled EINTR signals from the OS
while select() is polling.
I think this problem is Solaris-specific since Solaris
has interruptible non-restartable sytem calls.
This behavior is apparently a known issue with the
system API select(); see
man -s3c select
and
http://lists.community.tummy.com/pipermail/frpythoneers/2000-August/000122.html
The recommend fix from frpythoneers is to wrap the
select (and socket, respectively) calls in a loop:
while True:
try:
select.select(...)
break
except select.error, v:
if v[0] == errno.EINTR: continue
else: raise
It's probably more appropriate to put the
exception-handling *inside* select.select (and
socket.socket) but that's beyond my expertise...
OS: SunOS 5.9 Generic_112233-11 sun4u sparc
SUNW,Sun-Blade-100
|
|
msg85037 - (view) |
Author: Jack Diederich (jackdied) |
Date: 2009-04-01 16:21 |
|
assigning all open telnetlib items to myself
|
|
| Date |
User |
Action |
Args |
| 2009-04-01 16:21:06 | jackdied | set | assignee: jackdied
messages:
+ msg85037 nosy:
+ jackdied |
| 2009-02-14 18:19:39 | ajaksu2 | set | stage: test needed type: behavior versions:
+ Python 2.6, - Python 2.3 |
| 2004-10-18 17:39:51 | brauwerman | create | |
|