Well, regardless of the brokenness of the patch, I do get two different failures from this test on OSX. The first is caused by trying to socket.bind() a port that's already been bound recently:
Exception in thread Thread-2:
Traceback (most recent call last):
File "/Users/jyasskin/src/python/test_asyncore/Lib/threading.py",
line 464, in __bootstrap
self.run()
File "/Users/jyasskin/src/python/test_asyncore/Lib/threading.py",
line 444, in run
self.__target(*self.__args, **self.__kwargs)
File "Lib/test/test_asyncore.py", line 59, in capture_server
serv.bind(("", PORT))
File "<string>", line 1, in bind
socket.error: (48, 'Address already in use')
That looks pretty easy to fix.
The second:
======================================================================
ERROR: test_send (__main__.DispatcherWithSendTests_UsePoll)
----------------------------------------------------------------------
Traceback (most recent call last):
File "Lib/test/test_asyncore.py", line 351, in test_send
d.send(data)
File "/Users/jyasskin/src/python/test_asyncore/Lib/asyncore.py",
line 468, in send
self.initiate_send()
File "/Users/jyasskin/src/python/test_asyncore/Lib/asyncore.py",
line 455, in initiate_send
num_sent = dispatcher.send(self, self.out_buffer[:512])
File "/Users/jyasskin/src/python/test_asyncore/Lib/asyncore.py",
line 335, in send
if why[0] == EWOULDBLOCK:
TypeError: 'error' object is unindexable
seems to be caused by a change in exceptions. I've reduced the problem
into the attached patch, which adds a test to Lib/test/test_socket.py.
It looks like subscripting is no longer the way to get values out of
socket.errors, but another way hasn't been implemented yet.
On 7/30/07, Greg Ewing <[EMAIL PROTECTED]> wrote:
> Hasan Diwan wrote:
> > The issue seems to be in the socket.py close method. It needs to sleep
> > socket.SO_REUSEADDR seconds before returning.
>
> WHAT??? socket.SO_REUSEADDR is a flag that you pass when
> creating a socket to tell it to re-use an existing address,
> not something to be used as a timeout value, as far as
> I know.
>
> --
> Greg
> _______________________________________________
> Python-3000 mailing list
> [email protected]
> http://mail.python.org/mailman/listinfo/python-3000
> Unsubscribe:
> http://mail.python.org/mailman/options/python-3000/jyasskin%40gmail.com
>
--
Namasté,
Jeffrey Yasskin
http://jeffrey.yasskin.info/
"Religion is an improper response to the Divine." — "Skinny Legs and
All", by Tom Robbins
socket_breakage.diff
Description: Binary data
_______________________________________________ Python-3000 mailing list [email protected] http://mail.python.org/mailman/listinfo/python-3000 Unsubscribe: http://mail.python.org/mailman/options/python-3000/archive%40mail-archive.com
