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

John Ziniti jziniti@speakeasy.org
Wed, 22 Aug 2001 13:53:51 -0400


> bug in the Python bug tracker at SF.  I think he's right that asyncore
> should catch EINTR and retry.  The right thing, in probably every
> case, is to retry the select.  Thus, asyncore should be doing it and
> not burdening every application (like Zope) with the need to add a
> try/except. 

I actually modified asyncore.py in Python :), not in Zope/medusa sources.

> Did you retry the select() or did you do something else?

Orginally, I failed to understand what I needed to do.  In my first
attempt, I just caught EINTR and pretended nothing went wrong :)  I think
this is what caused the EWOULBLOCK problems. My second version 
(simplifed by Toby) loops until we don't catch EINTR.  This one has
been working very well for three days.


> Is it easy to reproduce this error?  Could you isolate a test case
> that I could run locally?  Also, what platform are you running on?

The most reliable way I've found of getting it is to install the 
DCO2 Product for Oracle and try to create a DB Connection.  That failed
with this error every single time -- but that may not be an option 
for you.  Other than that, the errors were unpredictable, but pretty 
common just by clicking around the ZMI.

Platform is SunOS 5.8/Sparc with Python-2.1.1 and Zope-2.4.0


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