[ZODB-Dev] 'PersistentReference' object has no attribute '_p_jar'

Dieter Maurer dieter at handshake.de
Wed Apr 1 15:14:38 EDT 2009


Dominique Lederer wrote at 2009-3-30 11:15 +0200:
>I am using ZODB 3.8.1 with Relstorage 1.1.3 on Postgres 8.1
>
>Frequently i am getting messages like:
>
>Unexpected error
>Traceback (most recent call last):
>  File
>"/home/zope/zope_script/eggs/ZODB3-3.8.1-py2.4-linux-x86_64.egg/ZODB/ConflictResolution.py",
>line 207, in tryToResolveConflict
>    resolved = resolve(old, committed, newstate)
>  File
>"/home/zope/zope_script/eggs/zope.app.keyreference-3.4.1-py2.4.egg/zope/app/keyreference/persistent.py",
>line 55, in __cmp__
>    return cmp(
>AttributeError: 'PersistentReference' object has no attribute '_p_jar'

You traceback looks strange. I miss a "resolve" line.

The bug is probably in this "resolve" function (missing in the traceback).
The state handed down to the "resolve" function does not contain
true persistent objects; instead they are replaced by "PersistentReference"s
with almost no functionality. I think, the only thing one can do
with them is compare them for equality.



-- 
Dieter


More information about the ZODB-Dev mailing list