[Zope-CVS] CVS: Products/BTreeFolder2 - CHANGES.txt:1.1 BTreeFolder2.py:1.16 README.txt:1.3 version.txt:1.6

Shane Hathaway shane at zope.com
Wed Aug 27 12:32:37 EDT 2003


Update of /cvs-repository/Products/BTreeFolder2
In directory cvs.zope.org:/tmp/cvs-serv5896

Modified Files:
	BTreeFolder2.py README.txt version.txt 
Added Files:
	CHANGES.txt 
Log Message:
Made preparations for 1.0 release (finally ;-) )

=== Added File Products/BTreeFolder2/CHANGES.txt ===

Version 1.0

  - BTreeFolder2s now use an icon contributed by Chris Withers.

  - Since recent ZODB releases have caused minor corruption in BTrees,
    there is now a manage_cleanup method for fixing damaged BTrees
    contained in BTreeFolders.

Version 0.5.1

  - Fixed the CMFBTreeFolder constructor.



=== Products/BTreeFolder2/BTreeFolder2.py 1.15 => 1.16 ===
--- Products/BTreeFolder2/BTreeFolder2.py:1.15	Wed Aug 27 10:06:53 2003
+++ Products/BTreeFolder2/BTreeFolder2.py	Wed Aug 27 11:32:37 2003
@@ -126,6 +126,8 @@
 
     security.declareProtected(view_management_screens, 'manage_cleanup')
     def manage_cleanup(self):
+        """Calls self._cleanup() and reports the result as text.
+        """
         v = self._cleanup()
         path = '/'.join(self.getPhysicalPath())
         if v:
@@ -152,16 +154,21 @@
             check(self._tree)
             for key in self._tree.keys():
                 if not self._tree.has_key(key):
-                    raise AssertionError
+                    raise AssertionError(
+                        "Missing value for key: %s" % repr(key))
             check(self._mt_index)
             for key, value in self._mt_index.items():
                 if (not self._mt_index.has_key(key)
                     or self._mt_index[key] is not value):
-                    raise AssertionError
+                    raise AssertionError(
+                        "Missing or incorrect meta_type index: %s"
+                        % repr(key))
                 check(value)
                 for k in value.keys():
                     if not value.has_key(k):
-                        raise AssertionError
+                        raise AssertionError(
+                            "Missing values for meta_type index: %s"
+                            % repr(key))
             return 1
         except AssertionError:
             LOG('BTreeFolder2', WARNING,


=== Products/BTreeFolder2/README.txt 1.2 => 1.3 ===
--- Products/BTreeFolder2/README.txt:1.2	Thu Aug 22 09:50:18 2002
+++ Products/BTreeFolder2/README.txt	Wed Aug 27 11:32:37 2003
@@ -98,6 +98,22 @@
 performance benefits gained by using BTreeFolder2.
 
 
+Repairing BTree Damage
+======================
+
+Certain ZODB bugs in the past have caused minor corruption in BTrees.
+Fortunately, the damage is apparently easy to repair.  As of version
+1.0, BTreeFolder2 provides a 'manage_cleanup' method that will check
+the internal structure of existing BTreeFolder2 instances and repair
+them if necessary.  Many thanks to Tim Peters, who fixed the BTrees
+code and provided a function for checking a BTree.
+
+Visit a BTreeFolder2 instance through the web as a manager.  Add
+"manage_cleanup" to the end of the URL and request that URL.  It may
+take some time to load and fix the entire structure.  If problems are
+detected, information will be added to the event log.
+
+
 Future
 ======
 


=== Products/BTreeFolder2/version.txt 1.5 => 1.6 ===
--- Products/BTreeFolder2/version.txt:1.5	Thu Aug 21 13:03:52 2003
+++ Products/BTreeFolder2/version.txt	Wed Aug 27 11:32:37 2003
@@ -1 +1 @@
-BTreeFolder2-0.5.1+
+BTreeFolder2-1.0




More information about the Zope-CVS mailing list