[Zope-dev] Corrupt Data.fs: Is there a way of fixing transaction ids?

Joachim Werner joe@iuveno.de
Sat, 3 Aug 2002 13:17:33 +0200


Hi!

I have a really large Data.fs file (1.3 GB) that has a number of errors.
When I run the fstest.py script, I get this:

Problem: 109963117 object serialno 0x034573c4b6a2cb6e does not match
transaction id 0x034573c55c8c0dbb

How can I fix the Data.fs file? It should be possible to scan the Data.fs
and create correct serialnos or transaction ids for the broken entries. But
how exactly would I do that?

I'd also like to identify the corrupt entries (i.e. find out the Zope object
they belong to) to be able to eliminate them.

My ultimate question is how these corrupt entries can exist at all. The
Data.fs hit the 2 GB border once. So that could be a reason. But even then
it would be really nice for the ZODB to not write corrupt entries ...

Any help is appreciated ...

Thanks

Joachim