On Sep 8, 2005, at 7:44 PM, Michael Watkins wrote: > > Any thoughts or suggestions on where to go from here? Is the ComputedAttribute instance (x) committed to the database? (It is, if x._p_oid is not None). I'll assume it is. Is something on the path of references from the root object to x invalidated (by a change of attribute in another connection), or made into a ghost by Connection.shrink()? If so, the python garbage collector may have flushed x, so it starts out fresh again when it is reloaded. (You could verify this by instrumenting the lines in Connection.shrink (), where there is a local variable 'removed' that is a set of oids of objects that have been removed by the garbage collector). Is Connection.shrink() removing the ComputedAttribute directly? If so, you might get better results by increasing the Connection cache size. (You could verify this by instrumenting Connection.shrink() and looking for the interested object's oid in the 'ghosts' local variable.)