[ZODB-Dev] another strange zeo error and zeo with ZLogger

Joseph Wayne Norton norton@alum.mit.edu
Thu, 04 Oct 2001 16:42:03 +0900


Hello.

I have 2 items ...

1) zeo error - I'm using zeo-1.0b4-p1 with python2.1.1 on the solaris
platform.  Just today I happened to run across an error while
connecting a zeo client.  This is the first time that I have seen such
an error.  Is this related to the recent dicussion about the weird zeo
errors?

2001-10-04T06:25:55 ERROR(200) ZEO Server uncaptured python exception,
closing c
hannel <StorageServer listening :7111 at 3b18a4>
(exceptions.OSError:[Errno 24] 
Too many open files
[/opt/arseed/tfs-lib/lib/python2.1/asyncore.py|poll|95] [/op
t/arseed/tfs-lib/lib/python2.1/asyncore.py|handle_read_event|377]
[/opt/arseed/t
fs-lib/zope/zope-2.4.1/lib/python/ZEO/StorageServer.py|handle_accept|189]
[/opt/
arseed/tfs-lib/zope/zope-2.4.1/lib/python/ZEO/StorageServer.py|__init__|238]
[/o
pt/arseed/tfs-lib/zope/zope-2.4.1/lib/python/ZEO/trigger.py|__init__|133])

2) zeo enhanchement? - I would like to be able to use the
MailingLogger product (developed by nip ltd.) with zeo.  I looked into
the zeo code and realized that it does not use the ZLogger mechanism
(which MailingLogger requires) used by Zope.  I have patched another
copy of zeo start.py for **testing** purposes only and it seems to
work as expected.

 - is there any reason why I shouldn't import the ZLogger (and
 further the MailingLogger) module for such purposes?

 - does anyone else have experience with doing this?

 - in light of the above error, the mailinglogger product should be
 rock solid otherwise the mailing of such errors would defeat the
 purpose.


thanks and regards,

- joe


diff -c start.orig.py start.py 
*** start.orig.py       Thu Oct  4 15:58:21 2001
--- start.py    Thu Oct  4 16:17:15 2001
***************
*** 223,228 ****
--- 223,234 ----
  
      if detailed: os.environ['STUPID_LOG_SEVERITY']='-99999'
  
+     # support for MailingLogger
+     import zLOG
+     import ZLogger
+     import Products.MailingLogger
+     zLOG.log_write = ZLogger.ZLogger.log_write
+ 
      from zLOG import LOG, INFO, ERROR
  
      # Try to set uid to "-u" -provided uid.