[ZODB-Dev] Persistent ZEO Cache corruption?

Jim Fulton jim at zope.com
Thu Jan 12 07:10:37 EST 2006


Sidnei da Silva wrote:
> Every now and then I face a corruption of the persistent zeo cache,
> but this is the first time I get this variant.
> 
> The cause is very likely to be a forced shutdown of the box this zope
> instance was running on, but I thought it would be nice to report the
> issue.
> 
> Here's the traceback::
> 
> File "/home/sidnei/src/zope/28five/lib/python/ZEO/ClientStorage.py",
> line 314, in __init__
>   self._cache.open()
> File "/home/sidnei/src/zope/28five/lib/python/ZEO/cache.py", line
> 112, in open    self.fc.scan(self.install)
> File "/home/sidnei/src/zope/28five/lib/python/ZEO/cache.py", line
> 835, in scan    install(self.f, ent)
> File "/home/sidnei/src/zope/28five/lib/python/ZEO/cache.py", line
> 121, in install
>   o = Object.fromFile(f, ent.key, skip_data=True)
> File "/home/sidnei/src/zope/28five/lib/python/ZEO/cache.py", line
> 630, in fromFile
>   raise ValueError("corrupted record, oid")
> ValueError: corrupted record, oid
> 
> I have a copy of the zeo cache file if anyone is interested.
> 
> What is bad about this problem is that it prevented Zope from starting
> and there is no obvious clue that removing the persistent zeo cache
> would cure it, though that's what anyone that has a clue about what
> he's doing would do *wink*.

It sounds like there should be logic in that code to abandon the
cache if a problem is found, much as we abandon file-storage index files
if anything seems suspicious.

It seems as though persistent caches haven't been a very sucessful feature.
Perhaps we should abandon them.

Jim

-- 
Jim Fulton           mailto:jim at zope.com       Python Powered!
CTO                  (540) 361-1714            http://www.python.org
Zope Corporation     http://www.zope.com       http://www.zope.org


More information about the ZODB-Dev mailing list