Tim Peters wrote at 2004-5-30 14:49 -0400:
>> I think, this is a ZODB buglet:
>> It should set "_p_changed = 0" before it calls "__setstate__"
>> and not afterwards...
>I don't know; Jim (or Jeremy) may know the reasoning here, but I don't.
>Activation currently sets the state to changed *before* calling __setstate__
>too. A comment says this is to prevent recursively calling _PyPersist_Load,
>and that makes sense to me, else unbounded recursion could occur.
>On ZODB head, Jeremy also documented that __setstate__ can't affect the
>persistent state (in persistent/interfaces.py's IPersistent). Whether this
>is deliberate design, or a consequence of the current implementation, I
A potential problem: it *can* change the persistent state but
it does not do it reliably. It does precisely when the object
is later modified again: in this case modifications made
in "__setstate__" become persistent, otherwise, they do not.
Zope-Dev maillist - [EMAIL PROTECTED]
** No cross posts or HTML encoding! **
(Related lists -