On Thu, Feb 9, 2012 at 11:32 AM, Marius Gedminas <mar...@gedmin.as> wrote: > On Thu, Feb 09, 2012 at 02:26:10AM +0100, Kaweh Kazemi wrote: >> Thanks a lot for the investigation, Marius. That was awesome. >> >> Seems to me, I need to upgrade to Python 2.7 and be done with the >> problem then. :/ > > I wonder, though, if ZODB ought to use the 'noload' method of > cPickle.Unpickler, which is undocumented and broken on 2.6 (and gone on > 3.x, AFAIU).
noload exists for ZODB. We ZC (DC at the time) wrote cPickle because ZODB needed a highly-optimized pickler. There are a number of decisions we made specifically with ZODB in mind. I don't think the Python 3 version of cPickle reflects these priorities. I strongly suspect we'll end up having our own cPickle in the long run. ... > I don't use cross-database references. Cross-database references are definitely an advanced feature that can lead to trouble. When used correctly, they can be very useful. .. > Does zeopack consider cross-database references correctly when it checks > for reachability? I would hope so, but I don't really know. It would > only work if you're packing all the storages together, presumably. zeopack only works on a single storage and thus can't take cross-database references into account. See http://pypi.python.org/pypi/zc.zodbdgc Perhaps this should be included in ZODB 3.11. Jim -- Jim Fulton http://www.linkedin.com/in/jimfulton _______________________________________________ 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