[Zope] IOError: [Errno 107] Transport endpoint is not connected

Carlo Giomini c.giomini@caspur.it
Mon, 8 Jul 2002 15:09:50 +0200 (MEST)


Hi everybody,
I wrote an external method that performs the authentication to an AFS
server, calling a C subroutine that I wrapped with SWIG. The subroutine
executes fine, and control returns to the python code of the ext method
that called it , but when the etx method exits (immediately
after exiting, I guess) I get an error with this stack trace:

2002-07-08T10:28:19 ERROR(200) ZServer uncaptured python exception,
closing channel <ZServer.HTTPServer.zhttp_channel connected
aa.bb.cc.dd:1660 at 0x8b2f12c channel#: 2 requests:>
(exceptions.IOError:[Errno 107] Transport endpoint is not connected
[.../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/asyncore.py|poll|107]
[.../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/asyncore.py|handle_write_event|398]
[.../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/asynchat.py|handle_write|146]
[.../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/asynchat.py|initiate_send|208]
[.../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/asynchat.py|refill_buffer|195]
[.../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/Producers.py|more|36]
[.../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/http_server.py|log|289]
[.../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/logger.py|log|247]
[.../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/logger.py|log|77]
[.../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medus2002-07-08T10:28:19
ERROR(200) ZServer uncaptured python exception, closing channel
<ZServer.HTTPServer.Traceback (most recent call last):
  File ".../carlo/zope/Zope-2.5.1-linux2-x86/z2.py", line 707, in ?
    asyncore.loop()
  File
".../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/asyncore.py", line
200, in loop
    poll_fun (timeout, map)
  File
".../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/asyncore.py", line
111, in poll
    obj.handle_error()
  File
".../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/http_server.py",
line 437, in handle_error
    asynchat.async_chat.handle_error (self)
  File
".../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/asyncore.py", line
421, in handle_error
    self.close()
  File ".../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/HTTPServer.py",
line 293, in close
    p.more() # free up resources held by producer
  File ".../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/Producers.py", line
36, in more
    getattr(self.logger, self.method)(self.bytes)
  File
".../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/http_server.py",
line 289, in log
    ' - %s [%s] "%s" %d %d "%s" "%s"\n' % (
  File ".../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/logger.py",
line 247, in log
    self.logger.log ('%s%s' % (ip, message))
  File ".../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/logger.py",
line 77, in log
    self.write (message)
  File ".../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/logger.py",
line 53, in write
    self.maybe_flush()
  File ".../carlo/zope/Zope-2.5.1-linux2-x86/ZServer/medusa/logger.py",
line 65, in maybe_flush
    self.file.flush()
IOError: [Errno 107] Transport endpoint is not connected

Not to mention, the ZServer process aborts execution.   
Does anybody know what kind of bug might cause such error
and (possibly) how to fix it?

Thanks in advance. Regards,
	Carlo.