The BTrees package is an attempt to isolate certain things from ZODB.
While I appreciate the general intent, I cannot see the advantage at this point: - BTrees can be imported alone, yes. But it has the extensions prepared with special ZODB slots, which makes this very questionable. - BTrees furthermore claims the BTrees global bame for it, all though it is not a general BTree package, but for ZODB BTrees, only. - BTrees has a serious bug, see the following example:
>>> from BTrees import OOBTree as BT >>> t = BT.BTree() >>> for num in range(100): ... k = str(num) ... t[k] = k ... >>> t._firstbucket._next = None >>> len(t) Bus error: 10 (tmp)minimax:doc tismer$
So there is either an omission to make t._next() read-only, or a check of its validity is missing. Actually, I would like to add a callable-check instead, to allow for more flexible derivatives. * this was my second little rant about ZODB. Not finished as it seems. please, see this again as my kraut way of showing interest in improving very good things. cheers -- chris -- Christian Tismer :^) <mailto:tis...@stackless.com> Software Consulting : Have a break! Take a ride on Python's Karl-Liebknecht-Str. 121 : *Starship* http://starship.python.net/ 14482 Potsdam : PGP key -> http://pgp.uni-mainz.de phone +49 173 24 18 776 fax +49 (30) 700143-0023 PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04 whom do you want to sponsor today? http://www.stackless.com/ _______________________________________________ For more information about ZODB, see http://zodb.org/ ZODB-Dev mailing list - ZODB-Dev@zope.org https://mail.zope.org/mailman/listinfo/zodb-dev