This is the first time I write in this list, looking for some advice to solve the problems we have encountered in our Zope enviroment.

We are running a non-zeo Zope 2.9.8 with 2 databases (the main ZODB and a mounted database, called 'twikidb', via ZODB Mounted point, within a Plone instance on an object called 'twiki_import'). At some point the Plone instance wasn't accessible anymore, neither the left bar menu on the ZMI, raising some *KeyErrors* as follows (instance.log):

/2008-07-08T14:12:30 ERROR ZODB.Connection Couldn't load state for 0x2762
Traceback (most recent call last):
File "/opt/zope/src/Zope-2.9.7-final/lib/python/ZODB/Connection.py", line 732, in setstate
File "/opt/zope/src/Zope-2.9.7-final/lib/python/ZODB/Connection.py", line 786, in _setstate
   self._reader.setGhostState(obj, p)
File "/opt/zope/src/Zope-2.9.7-final/lib/python/ZODB/serialize.py", line 604, in setGhostState
   state = self.getState(pickle)
File "/opt/zope/src/Zope-2.9.7-final/lib/python/ZODB/serialize.py", line 597, in getState
   return unpickler.load()
File "/opt/zope/src/Zope-2.9.7-final/lib/python/ZODB/serialize.py", line 479, in _persistent_load
   return self.loaders[reference_type](self, *args)
File "/opt/zope/src/Zope-2.9.7-final/lib/python/ZODB/serialize.py", line 540, in load_multi_oid
   conn = self._conn.get_connection(database_name)
File "/opt/zope/src/Zope-2.9.7-final/lib/python/ZODB/Connection.py", line 305, in get_connection
   new_con = self._db.databases[database_name].open(
KeyError: 'twikidb'
2008-07-08T14:12:30 ERROR Zope.SiteErrorLog http://i3.ripe.net:8085/Plone/manage_main
Traceback (innermost last):
 Module ZPublisher.Publish, line 115, in publish
 Module ZPublisher.mapply, line 88, in mapply
 Module ZPublisher.Publish, line 41, in call_object
 Module Shared.DC.Scripts.Bindings, line 311, in __call__
 Module Shared.DC.Scripts.Bindings, line 348, in _bindAndExec
 Module App.special_dtml, line 176, in _exec
 Module DocumentTemplate.DT_Let, line 76, in render
 Module DocumentTemplate.DT_In, line 643, in renderwob
 Module DocumentTemplate.DT_In, line 771, in sort_sequence
 Module ZODB.Connection, line 732, in setstate
 Module ZODB.Connection, line 786, in _setstate
 Module ZODB.serialize, line 604, in setGhostState
 Module ZODB.serialize, line 597, in getState
 Module ZODB.serialize, line 479, in _persistent_load
 Module ZODB.serialize, line 540, in load_multi_oid
 Module ZODB.Connection, line 305, in get_connection
KeyError: 'twikidb'/

This is how the zope.conf look like:

/<zodb_db main>
   # Main database
   cache-size 5000
# FileStorage database
     path <instance>/var/filestorage/Data.fs
   mount-point /

<zodb_db twikidb>
      # Contains the Twiki DB
      cache-size 2000
              path <instance>/var/filestorage/twikidb/Data.fs
      mount-point /Plone/twiki

<zodb_db temporary>
   # Temporary storage database (for sessions)
     name temporary storage for sessioning
   mount-point /temp_folder
   container-class Products.TemporaryFolder.TemporaryContainer

Any idea on how to fix this? I would unmount the database 'twikidb' if needed, even delete the object related. The most important thing is getting back the Plone instance and the ZMI.

Thank you!

- Miguel

For more information about ZODB, see the ZODB Wiki:

ZODB-Dev mailing list  -  ZODB-Dev@zope.org

Reply via email to