[ python-Bugs-1011606 ] 2.4 asyncore breaks Zope
SourceForge.net
noreply at sourceforge.net
Mon Aug 30 18:49:15 CEST 2004
Bugs item #1011606, was opened at 2004-08-18 13:19
Message generated for change (Comment added) made by tim_one
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1011606&group_id=5470
Category: Python Library
Group: Python 2.4
Status: Open
Resolution: None
Priority: 6
Submitted By: Tim Peters (tim_one)
Assigned to: A.M. Kuchling (akuchling)
Summary: 2.4 asyncore breaks Zope
Initial Comment:
Bug 629097 describes a thread race involving
asyncore.pool(), and was closed with "so don't do that".
Polling exception sets is new in 2.4, though, and opens
the same race to formerly safe uses: leaving
indeterminate junk in the socket map, provided that junk
doesn't call itself readable or writable. Such junk never
got passed to select() before 2.4, but always gets
passed to select() in 2.4. This is incompatible behavior,
albeit in a grey area.
More discussion starting at
http://mail.python.org/pipermail/python-dev/2004-
August/047817.html
----------------------------------------------------------------------
>Comment By: Tim Peters (tim_one)
Date: 2004-08-30 12:49
Message:
Logged In: YES
user_id=31435
Logic similar to the logic in the patch worked for me when I
tried it. Suggest it would be faster and clearer to just add
e = r + w
to the 2.3 asyncore poll().
----------------------------------------------------------------------
Comment By: A.M. Kuchling (akuchling)
Date: 2004-08-30 12:40
Message:
Logged In: YES
user_id=11375
Attaching patch.
----------------------------------------------------------------------
Comment By: Tim Peters (tim_one)
Date: 2004-08-30 12:36
Message:
Logged In: YES
user_id=31435
No patched is attached (you have to check the box, etc).
I was running Zope3 tests, and testManyClients specifically is
what fails now (plus some irrelvant failures caused by the
testManyClients failure). testManyClients isn't a ZODB/ZEO
test, BTW. I didn't see any failures in ZODB/ZEO tests due
to the asyncore change.
----------------------------------------------------------------------
Comment By: A.M. Kuchling (akuchling)
Date: 2004-08-30 07:12
Message:
Logged In: YES
user_id=11375
The attached patch restores the behaviour that fds are only
checked if they're readable or writable. However, even with
the patch the ZODB/ZEO tests still fail for me.
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1011606&group_id=5470
More information about the Python-bugs-list
mailing list