Medusa doesn't catch Connection reset by peer sometimes

Bug #143116 reported by ChrisW
2
Affects Status Importance Assigned to Milestone
Zope 2
Invalid
Wishlist
Unassigned

Bug Description

I've seen entries like this in logs:

ERROR(200) ZServer uncaptured python exception, closing channel <ZServer.HTTPServer.zhttp_channel connected x.x.x.x:33054 at 0x4608ac2c channel#: 50679 requests:> (socket.error:(104, 'Connection reset by peer') [/usr/local/lib/python2.3/asynchat.py|initiate_send|218] [/usr/local/zope/2.7.2/lib/python/ZServer/medusa/http_server.py|send|417] [/usr/local/lib/python2.3/asyncore.py|send|337])

An HTTP connection reset shouldn't be an "uncaptured python exception".

Tags: bug zope
Revision history for this message
Florent Guillaume (efge) wrote :

Well it's really an asyncore problem, and now that we're using python's standard one it's harder to fix.

Still I guess we could trap socket.error and react on ECONNRESET from medusa.http_server.http_channel.send, and do the handle_close() ourselves there.

Revision history for this message
Florent Guillaume (efge) wrote :

Changes: submitter email, edited transcript, revised title

Revision history for this message
Florent Guillaume (efge) wrote :
Revision history for this message
ChrisW (chris-simplistix) wrote :

Doesn't Zope use it's own bastardised version of asyncore?

Revision history for this message
Florent Guillaume (efge) wrote :

Not anymore, it uses python's standard one now.

Tres Seaver (tseaver)
Changed in zope2:
importance: Medium → Wishlist
status: New → Triaged
Revision history for this message
Colin Watson (cjwatson) wrote :

The zope2 project on Launchpad has been archived at the request of the Zope developers (see https://answers.launchpad.net/launchpad/+question/683589 and https://answers.launchpad.net/launchpad/+question/685285). If this bug is still relevant, please refile it at https://github.com/zopefoundation/zope2.

Changed in zope2:
status: Triaged → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.