[Zodb-checkins] CVS: ZODB3 - NEWS.txt:1.17.2.11

Jeremy Hylton jeremy@zope.com
Wed, 13 Nov 2002 15:15:00 -0500


Update of /cvs-repository/ZODB3
In directory cvs.zope.org:/tmp/cvs-serv31750

Modified Files:
      Tag: ZODB3-3_1-branch
	NEWS.txt 
Log Message:
Add news about bugs fixed on this branch.


=== ZODB3/NEWS.txt 1.17.2.10 => 1.17.2.11 ===
--- ZODB3/NEWS.txt:1.17.2.10	Tue Nov 12 08:23:08 2002
+++ ZODB3/NEWS.txt	Wed Nov 13 15:14:59 2002
@@ -2,8 +2,37 @@
 =========================
 Release date: XX-Nov-2002
 
+It was possible for earlier versions of ZODB to deadlock when using
+multiple storages.  If multiple transactions committed concurrently
+and both transactions involved two or more shared storages, deadlock
+was possible.  This problem has been fixed by introducing a sortKey()
+method to the transaction and storage APIs that is used to define an
+ordering on transaction participants.  This solution will prevent
+deadlocks provided that all transaction participants that use locks
+define a valid sortKey() method.  A warning is raised if a participant
+does not define sortKey().  For backwards compatibility, BaseStorage
+provides a sortKey() that uses __name__.
+
 Added code to ThreadedAsync/LoopCallback.py to work around a bug in
 asyncore.py: a handled signal can cause unwanted reads to happen.
+
+A bug in FileStorage related to object uncreation was fixed.  If an
+a transaction that created an object was undone, FileStorage could
+write a bogus data record header that could lead to strange errors if
+the object was loaded.  An attempt to load an uncreated object now
+raises KeyError, as expected.
+
+A bug was fixed in conflict resolution that raised a NameError when a
+class involved in a conflict could not be loaded.  The bug did not
+affect correctness, but prevent ZODB from caching the fact that the
+class was unloadable.
+
+The script Tools/zeopack.py was fixed to work with ZEO 2.  It was
+untested and had two silly bugs.
+
+Some C extensions included standard header files before including
+Python.h, which is not allowed.  They now include Python.h first,
+which eliminates compiler warnings in certain configurations.
 
 What's new in ZODB3 3.1 final?
 ===============================