Hanno Schlichting wrote:
> On Tue, Jul 13, 2010 at 11:23 AM, Suresh V. <suresh...@yahoo.com> wrote:
>> While trying to run manage_cleanup on my BTreeFolder2, I get a KeyError
>> from the classify function in Module BTrees.check:
>> def classify(obj):
>> return _type2kind[type(obj)]
>> I see that obj is None at this point.
>> Anyway I can patch the code to run around this?
> This should be solved in BTreeFolder2 I guess. It shouldn't pass in
> something that is None into the lower level function.
> But I thought the manage_cleanup methods where only used years ago,
> while BTree's had some internal book keeping problems. Do you still
> get BTree corruption in any recent ZODB3 / Zope 2 combination? The
> cleanup code is from six years back before BTreeFolder2 was even part
> of a Zope2 release, I was close to removing it the other day.
Problem was due to broken object. Seems to affect sibling objects or
even objects higher up in the hierarchy (can't navigate to them in the
ZMI). Not sure if anything can be done to fix it though.
For more information about ZODB, see the ZODB Wiki:
ZODB-Dev mailing list - ZODB-Dev@zope.org