[Twisted-Python] Anyone seeing hanging of Twisted HTTPS servers?

Mike C. Fletcher mcfletch at rogers.com
Wed May 18 07:31:44 MDT 2005


We've recently picked up 3 or 4 minute blocks on one of our servers. 
Wondering if anyone else has seen these.

We have a "zombiechecker" script that downloads the front page of the
web front-end every minute (restarting the entire server if it can't
connect).  After 20 or 30 minutes (sometimes a few hours) we see 3 or 4
of those checks queued, the connection has been accepted, but the server
appears to be frozen (the reactor doesn't appear to be processing
anything, neither web front-end or the processing back-end).  After the
3 or 4 minutes frozen, the server starts processing the back-end
operations and eventually gets around to replying to the web front-end
requests.  Most of the time we see an error in the logs like this just
as the blockage is clearing:

Traceback (most recent call last):
  File "/home/mcfletch/cvs/twisted/python/log.py", line 41, in
callWithContext
    return context.call({ILogContext: newCtx}, func, *args, **kw)
  File "/home/mcfletch/cvs/twisted/python/context.py", line 52, in
callWithContext
    return self.currentContext().callWithContext(ctx, func, *args, **kw)
  File "/home/mcfletch/cvs/twisted/python/context.py", line 31, in
callWithContext
    return func(*args,**kw)
  File "/home/mcfletch/cvs/twisted/internet/selectreactor.py", line 139,
in _doReadOrWrite
    why = getattr(selectable, method)()
--- <exception caught here> ---
  File "/home/mcfletch/cvs/twisted/internet/tcp.py", line 111, in doRead
    return Connection.doRead(self)
  File "/home/mcfletch/cvs/twisted/internet/tcp.py", line 343, in doRead
    data = self.socket.recv(self.bufferSize)
OpenSSL.SSL.Error: [('SSL routines', 'SSL23_READ', 'ssl handshake failure')]

but the web front-end query still goes through (possibly because
web.client is retrying?).

Anyway, just wondering if anyone else has seen it or whether we're off
in funky land. In the meantime I'm going to try turning on every bit of
logging in the system while I'm off at a meeting and see if I can
discover the precise point where it's hanging.

Oh, FreeBSD 5.3-RC2, Python 2.3.4, Twisted 2.0, Nevow from CVS.

Thanks all,
Mike

-- 
________________________________________________
  Mike C. Fletcher
  Designer, VR Plumber, Coder
  http://www.vrplumber.com
  http://blog.vrplumber.com





More information about the Twisted-Python mailing list