Commit e71d36e3 authored by Tim Peters's avatar Tim Peters

Merge rev 40783 from 3.4 branch.

_setstate():  An MVCC optimization was inadvertently disabled by
fixes for ZClasses.  Repaired.

Elsewhere, repaired English in comments.

NEWS.txt:  removed news from 3.6 and earlier.
parent 3aecb3ea
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -619,8 +619,8 @@ class Connection(ExportImport, object): ...@@ -619,8 +619,8 @@ class Connection(ExportImport, object):
self._storage.tpc_abort(transaction) self._storage.tpc_abort(transaction)
# Note: If we invalidate a non-justifiable object (i.e. a # Note: If we invalidate a non-ghostifiable object (i.e. a
# persistent class), the object will immediately reread it's # persistent class), the object will immediately reread its
# state. That means that the following call could result in a # state. That means that the following call could result in a
# call to self.setstate, which, of course, must succeed. In # call to self.setstate, which, of course, must succeed. In
# general, it would be better if the read could be delayed # general, it would be better if the read could be delayed
...@@ -759,10 +759,8 @@ class Connection(ExportImport, object): ...@@ -759,10 +759,8 @@ class Connection(ExportImport, object):
# dict update could go on in another thread, but we don't care # dict update could go on in another thread, but we don't care
# because we have to check again after the load anyway. # because we have to check again after the load anyway.
if (obj._p_oid in self._invalidated if (obj._p_oid in self._invalidated and
and not myhasattr(obj, "_p_independent") not myhasattr(obj, "_p_independent")):
and not self._invalidated
):
# If the object has _p_independent(), we will handle it below. # If the object has _p_independent(), we will handle it below.
self._load_before_or_conflict(obj) self._load_before_or_conflict(obj)
return return
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment