More info Re: [ZODB-Dev] ZEO select.error: (9, "Bad file desriptor")

JohnD.Heintz JohnD.Heintz
Thu, 14 Jun 2001 14:11:46 -0500


Michel:

I didn't understand all of what you said so I put=20
try:
  ...
except:=20
  traceback.print_exc()

code into the handle_read() and handle_write() methods found in smac.py.

Below is the output from re-running my test.  The handle_read() exception=
 and=20
the close() function seems to be executed in parallel because the printed=
=20
output was mixed together during printing. =20

Thanks,
John

-------------------------handle_read() exception:
Traceback (most recent call last):
  File "/usr/local/stow/python/lib/python2.1/site-packages/ZEO/smac.py", =
line=20
148, in handle_read
    self.message_input(d)
  File "/usr/local/stow/python/lib/python2.1/site-packages/ZEO/zrpc.py", =
line=20
268, in message_input
    try: self.__lr()
error: release unlocked lock

omniORB: Caught an unexpected Python exception during up-call.
Traceback (most recent call last):
  File=20
"/home/bonnell/src/bonnell/products/corbaFrameworks/ZODBCorbaFramework.py=
",=20
line 487, in preinvoke
    self.__session._enterSession()
  File "/home/bonnell/src/bonnell/products/thor_corba/thorCorbaServer.py"=
,=20
line 159, in _enterSession
    Session._enterSession(self)
  File=20
"/home/bonnell/src/bonnell/products/corbaFrameworks/ZODBCorbaFramework.py=
",=20
line 409, in _enterSession
    conn.sync()
  File=20
"/usr/local/stow/python/lib/python2.1/site-packages/ZODB/Connection.py", =
line=20
719, in sync
    if sync !=3D 0: sync()
  File=20
"/usr/local/stow/python/lib/python2.1/site-packages/ZEO/ClientStorage.py"=
,=20
line 605, in sync
    def sync(self): self._call.sync()
  File "/usr/local/stow/python/lib/python2.1/site-packages/ZEO/zrpc.py", =
line=20
185, in sync
    try: r, w, e =3D select.select([self._fileno],[],[],0.0)
select.error: (9, 'Bad file descriptor')

+++++++++++++++++++++handle_write() exception:
Traceback (most recent call last):
  File "/usr/local/stow/python/lib/python2.1/site-packages/ZEO/smac.py", =
line=20
172, in handle_write
    del output[0]
IndexError: list assignment index out of range


--=20
=2E . . . . . . . . . . . . . . . . . . . . . . .

John D. Heintz | Senior Engineer

1016 La Posada Dr. | Suite 240 | Austin TX 78752
T 512.633.1198 | jheintz@isogen.com

w w w . d a t a c h a n n e l . c o m