checkCreativeGetState tests the wrong fix to a problem

Bug #485456 reported by Jim Fulton
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ZODB
Fix Released
Medium
Unassigned

Bug Description

When an object modifies itself in __getstate__, it's state get's written twice. This is a bug in ZODB (Connection or serialize).

Storages should not have to tolerate this. Typically what happens is that multiple states get written for the object. The decision of which one to use is arbitrary. Presumably, checkCreativeGetState tests some "fix" to ZEO to tolerate this. This is the wrong fix. It needs to be fixed in ZODB.

This is somewhat related to https://bugs.launchpad.net/zodb/+bug/185066, as it represents a bug in the handling of an object's life cycle.

Jim Fulton (jim-zope)
Changed in zodb:
status: New → Confirmed
importance: Undecided → Medium
Revision history for this message
Jim Fulton (jim-zope) wrote :

This may have been fixed by the fix to https://bugs.launchpad.net/zodb/+bug/185066. We need to write (or find :) a test to verify this.

Revision history for this message
Jim Fulton (jim-zope) wrote :

I added a test, lp485456_setattr_in_setstate_doesnt_cause_multiple_stores, to verify this.

http://svn.zope.org/?rev=116732&view=rev

Changed in zodb:
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.