----- Original Message ----- From: "Sven Jacobs" <[EMAIL PROTECTED]>
I have a serious problem with Zope. Every time a certain page is requested by a web browser for the second or third time (first time always works) the whole Zope server crashes :-(

The only thing special about this page are calls of external Python methods from a custom extension. These methods don't do any special magic. They just open a MySQL database (using the MySQLdb module version 0.9.1) and return some HTML output.

I was able to catch a somewhat informative error message when Zope was running in debug mode:

2006-03-27T12:18:57 PANIC(300) z2 Startup exception
Traceback (innermost last):
  File /opt/zope/z2.py, line 495, in ?
    (Object: ZLogger)
  File <string>, line 1, in ?
  File /opt/zope/lib/python/Zope/__init__.py, line 37, in ?
  File /opt/zope/lib/python/ZODB/FileStorage.py, line 202, in __init__
  File /opt/zope/lib/python/ZODB/lock_file.py, line 29, in lock_file
StorageSystemError: Could not lock the database file.  There must be
another process that has opened the file.

It sounds like your external method is causing the problem, and an easy way to test this is to remove all of the code from the external method (ie. just turn it into a test stub routine) and see if the error goes away. If this works, then add code back into the external method, one logical 'chunk' at a time and test. Continue this until you add in the chunk of code that causes the error. It can often be useful to add debug info into a python list object, as your external method progresses, and then return this list to the calling routine (which then displays the contents of the list within your normal html page).


Zope maillist  -  Zope@zope.org
**   No cross posts or HTML encoding!  **
(Related lists - http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope-dev )

Reply via email to