Re: Migrating to BTrees 4.x

Jason Madden <[email protected]>
Newsgroups gmane.comp.web.zope.zodb
Message-ID <[email protected]>
> On Nov 19, 2016, at 21:23, Jason Madden <[email protected]> wrote:
> 
> I'll repeat the tests with master and report back anything significant.

Using master, I get the same results (the Python BTree will unpickle None keys, and None keys can be deleted; keys with broken comparisons like Bad cannot be found or deleted in the Python implementation but can in the C implementation; I can put instances of Bad in C trees but not Python trees). 

Aside from the different way the two implementations determine default comparison, the major problematic discrepancy seems to be that the C implementation compares pointers for equality before calling the __eq__/__cmp__ operator (PyObject_RichCompareBool[1]), while the Python code does not.

Jason

[1] https://github.com/python/cpython/blob/2.7/Objects/object.c#L997

-- 
You received this message because you are subscribed to the Google Groups "zodb" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
For more options, visit https://groups.google.com/d/optout.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.