[Zope-dev] Re: [Zope] select.error: (4, 'Interrupted system call')

John Ziniti jziniti@speakeasy.org
Thu, 16 Aug 2001 13:26:09 -0400


> John; Could you put this in the collector....

Sure

> Zope isnt 'crashing' here.... EINTR is an error that select can return
> under normal operation. The catch-and-retry is what asyncore *should*
> be doing - not a hack to cover up the problem.

> Hmmmm. I dont think you we expect that from select. Any posix gurus
> listening?

Let me apologize and clarify.  Zope *does* crash if there is no
try/except around the select, at least in the way that I think of
crashing.  It needs to restart itself in any case.  

I am pretty sure EINTR *is* the problem, but when I add the try,
it seems that a later call to accept() throws EWOULDBLOCK (??).  This
doesn't crash Zope, but brings down the FCGI and PCGI Servers.

See the trace below.  I added the print 'system.error' line 
inside the except block.


system.error 4((4, 'Interrupted system call'))
------
2001-08-16T13:16:01 ERROR(200) ZServer uncaptured python exception, closing channel <__repr__ (self) failed for object at dee7bc (addr='/tmp/zope.soc')> (exceptions.TypeError:unpack non-sequence [/u01/zope/lib/python2.1/asyncore.py|poll|101] [/u01/zope/lib/python2.1/asyncore.py|handle_read_event|383] [/u01/zope/Zope-2.4.0-src/ZServer/FCGIServer.py|handle_accept|697])
------
2001-08-16T13:16:01 ERROR(200) ZServer uncaptured python exception, closing channel <__repr__ (self) failed for object at dec4bc (addr='/u01/zope/Zope-2.4.0-src/var/pcgi.soc')> (exceptions.TypeError:unpack non-sequence [/u01/zope/lib/python2.1/asyncore.py|poll|101] [/u01/zope/lib/python2.1/asyncore.py|handle_read_event|383] [/u01/zope/Zope-2.4.0-src/ZServer/PCGIServer.py|handle_accept|380])
------
2001-08-16T13:16:01 ERROR(200) ZServer uncaptured python exception, closing channel <FTPServer listening :8021 at debcec> (exceptions.TypeError:unpack non-sequence [/u01/zope/lib/python2.1/asyncore.py|poll|101] [/u01/zope/lib/python2.1/asyncore.py|handle_read_event|383] [/u01/zope/Zope-2.4.0-src/ZServer/FTPServer.py|handle_accept|694])
------
2001-08-16T13:16:01 PROBLEM(100) ZServer warning: server accept() threw EWOULDBLOCK
------
2001-08-16T13:16:01 ERROR(200) ZServer uncaptured python exception, closing channel <select-trigger (pipe) at 248024> (exceptions.OSError:[Errno 11] Resource temporarily unavailable [/u01/zope/lib/python2.1/asyncore.py|poll|101] [/u01/zope/lib/python2.1/asyncore.py|handle_read_event|389] [/u01/zope/Zope-2.4.0-src/ZServer/medusa/thread/select_trigger.py|handle_read|77] [/u01/zope/lib/python2.1/asyncore.py|recv|341] [/u01/zope/lib/python2.1/asyncore.py|recv|523])



-- 
John Ziniti
Channing Laboratory
Brigham and Women's Hospital
181 Longwood Avenue
Brookline, MA 02115
john.ziniti@channing.harvard.edu