[ZODB-Dev] KeyError on mounted database

Miguel Sanchez Beato mbeato at ripe.net
Tue Jul 8 10:45:32 EDT 2008


Hello,

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
    self._setstate(obj)
  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
    <filestorage>
      path <instance>/var/filestorage/Data.fs
    </filestorage>
    mount-point /
</zodb_db>
 
<zodb_db twikidb>
       # Contains the Twiki DB
       cache-size 2000
       <filestorage>
               path <instance>/var/filestorage/twikidb/Data.fs
       </filestorage>
       mount-point /Plone/twiki
</zodb_db>
 
<zodb_db temporary>
    # Temporary storage database (for sessions)
    <temporarystorage>
      name temporary storage for sessioning
    </temporarystorage>
    mount-point /temp_folder
    container-class Products.TemporaryFolder.TemporaryContainer
</zodb_db>/



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


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.zope.org/pipermail/zodb-dev/attachments/20080708/6bcd7c30/attachment-0001.html


More information about the ZODB-Dev mailing list