On Monday 12 Aug 2002 11:31 pm, Romain Slootmaekers wrote:
But we found something else:
I included a script below that produces a stripped down analogy of our problem. (no zope needed, just ZODB, and you might wanna modify the first line to get it working)
Ive read your sample, but not tried it.
The question is: is intended ZODB behaviour or not, and is there a work around ?
Yes, this is the intended behaviour. While excecuting the conflict resolution logic, your conflicting objects exist in a void - completely seperate from all other ZODB objects. Any attributes which you might expect to be other persistent objects are substituted for attribute-less placeholders. This is the 'PersistentReference' object in your traceback. Note that these attributes are only a 'PersistentReference' while processing the conflict resolution logic. If you access this attribute at any other time you get your normal class, with all its normal attributes.