[ZODB-Dev] BTrees package problems
    Christian Tismer 
    tismer at stackless.com
       
    Sun Jul 21 05:27:03 CEST 2013
    
    
  
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:tismer at 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/
    
    
More information about the ZODB-Dev
mailing list