[ZODB-Dev] Assertion failed: key != Py_None, file ZODB/cPickleCache.c, line 445

Jeremy Hylton jeremy at zope.com
Fri May 16 17:26:55 EDT 2003


On Fri, 2003-05-16 at 11:41, Tim Hoffman wrote:
> Hi
> 
> In the last few days I have starting getting this error a lot
> (which causes Zope (well python actually) to dump core)
> 
> Assertion failed: key != Py_None, file ZODB/cPickleCache.c, line 445
> 
> I am using Solaris 8, gcc 3.1, Python 2.1.3 and Zope 2.6.1 and CMF
> 1.4Beta1
> 
> It only occurrs when we try to retrieve an object through path traversal
> when editing an object (we may have sucessfully edited the object a
> dozen times before the error starts occuring (ie when calling
> folder_edit_contents, or some other edit method, haven't got to trying
> to actually update the object just retrieving it. All of the objects are
> subclassed from portal_folder). Once this starts happening every time I
> try to edit (not save, but retrieve) the object I get the above error.
> If I copy the object, then the problem does not occur on the copy, but
> continues on the original object, such that I have to and can delete it.
> 
> I am not really sure where to start looking. I plan on Monday to start 
> putting debug code to try and isolate the conditions.
> 
> Has anyone else got any ideas on where to look?

I'm not sure where to look, but if you can test with ZODB 3.1.2b1, you
will get a Python exception instead of an assertion error.  I tried
passing None explicitly with 3.1.2b1 and it raises a TypeError: len() of
unsized object.

The exception will make it much easier to track down what is going
wrong.

Jeremy





More information about the ZODB-Dev mailing list