? btreecheck.diff ? kedaipatch Index: Transience.py =================================================================== RCS file: /cvs-repository/Zope/lib/python/Products/Transience/Transience.py,v retrieving revision 1.28.6.4 diff -r1.28.6.4 Transience.py 34a35 > from BTrees.check import check, display 45a47 > from cStringIO import StringIO 807c809,830 < v = self._data[b].get(k, notfound) --- > try: > v = self._data[b].get(k, notfound) > except KeyError: > LOG('Transience', WARNING, > 'KeyError raised in get, checking _data BTree') > try: > check(self._data) > LOG('Transience', WARNING,'BTree check succeeded') > except: > # BTree check failed > oldstdout = sys.stdout > tmp = StringIO() > try: > sys.stdout = tmp > display(self._data) > tmp.seek(0) > LOG('Transience', WARNING,'BTree check failed', > tmp.read(), error=sys.exc_info()) > tmp.close() > finally: > sys.stdout = oldstdout > raise