[Zope3-dev] ZEO test failing under Cygwin
Tim Peters
tim@zope.com
Mon, 5 May 2003 12:17:39 -0400
[Godefroid Chapelle]
> just wanted to tell ZEO people that running the full Z3 test suite
> results in the process getting stuck after the following traceback :
>
>
> 1009/3918 ( 25.8%): testZEOStorage
> (...orage.tests.test_config.StorageTestCase)
> Exception in thread Connect([(2, ('www.python.org', 9001))]):
> Traceback (most recent call last):
> File "/tmp/python.676/usr/lib/python2.2/threading.py", line 408, in
> __bootstrap
> self.run()
> File "/cygdrive/c/Zope3Head/Zope3/src/zodb/zeo/zrpc/client.py", line
> 286, in run
> success = self.try_connecting(attempt_timeout)
> File "/cygdrive/c/Zope3Head/Zope3/src/zodb/zeo/zrpc/client.py", line
> 314, in try_connecting
> r = self._connect_wrappers(wrappers, deadline)
> File "/cygdrive/c/Zope3Head/Zope3/src/zodb/zeo/zrpc/client.py", line
> 382, in _connect_wrappers
> del wrappers[wrap]
> KeyError: <zodb.zeo.zrpc.client.ConnectWrapper instance at 0xa552b70>
>
>
> What looks interesting to my naive eyes is that the bug looks to be
> fired in the code generated and situated in a temporary file.
I'm unclear on what that means. _connect_wrappers() is a method of
ConnectionManager, in zodb/zeo/zrpc.client.py. I don't see any reference to
a temp file in the traceback above.
> This makes me feel it is too hard to debug myself and better to tell
> the community ;-)
Logging info would probably help. Staring at the source for
_connect_wrappers, I'd *expect* to see a KeyError here if some socket
appeared in both the w and x sets returned by the select:
r, w, x = select.select([], connecting, connecting, 1.0)
I don't think a thing should appear in both w and x, but don't know that for
sure. Logging info would help most. If that's not enough, printing r, w
and x might help too.