ZODB A storage error occured during transaction abort.
This is new in code that has been running for ages. The impact is significant--it brings the system to a halt, restarting is the only option. The database appears to have been left unsullied. QLOG is a ZSQL method that saves some data in the database. It references an external method that generates a string that's guaranteed to be unique. It keeps its persistent state in the local file system and uses file locking--all outside of the usual Zope context. The database method references a Zope python script method which computes a portion of the SQL query. There's nothing unusual about the script but for the fact that it embeds a sub-procedure. I read Dieter's lucid description of the source of this error in the mailing list archives, but I am at a loss to identify the method that registers the surrogate and does not have an _p_oid instance. This is all running on Zope 2.6.2b3, Python 2.3.1, RH7.3. I know there was a bug in 2.6.1 of this sort, but I believe it was expunged.
From the error log:
2004-01-13T17:15:21 ERROR(200) ZODB A storage error occured during transaction abort. This shouldn't happen. Traceback (innermost last): File /home/zopesys/lib/python/ZODB/Transaction.py, line 262, in commit File /home/zopesys/lib/python/ZODB/Transaction.py, line 393, in _commit_error AttributeError: Surrogate instance has no attribute '_p_oid' ------ 2004-01-13T17:15:21 INFO(0) ZODB conflict error at /lms/QLOG (2 conflicts since startup at 2004-01-13T12:24:00) ------ 2004-01-13T17:29:07 INFO(0) Z2 Caught signal SIGTERM ------ 2004-01-13T17:29:07 INFO(0) Z2 Closing all open ZODB databases ------ Any help tracking this one down appreciated.
participants (1)
-
Dennis Allison