[ZODB-Dev] Re: [Zope] HELP - POSKeyError 000000000001efcd - Data.fs corruption

Toby Dickenson tdickenson@geminidataloggers.com
Thu, 20 Mar 2003 12:46:35 +0000

[Do we want this crossposted to zope@ and zodb-dev@ ?]

On Thursday 20 March 2003 12:21 pm, BZ wrote:
> Hey Chris,
> Thanks for helping me on on this one.
> I looked all over and I know how to reindex a catalog, but how do you
> reindex an entire site or zope installation?

I think chris is guessing that your zodb corruption is limited to a dangling 
reference inside the zcatalog btree, so that reindexing the *catalog* 
followed by a pack will purge all traces of the corruption. Chris, can you 
share how you reached this?

He might be correct. good luck. ;-)

You also reported:
>> 119583146L object serialno 0x034aab9e4b7e624c does not matchtransaction
>> id 0x034ac5e367948900

That sounds like more than a single dangling reference :-(

It raises one question for me - did this data start out in this FileStorage? 
Or, has it been passed through a copyTransactionsFrom function, or something 
else that call the restore() storage method?

Tracking down corruption in FileStorage is hard - both tracking down the type 
of corruption so you can repair it, and tracking down the bug that caused it 
initially. Doing anything more scientific than following Chris' guess will 
require you to go through a debugging process.

Toby Dickenson