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 Fulton
For more information about ZODB, see http://zodb.org/

ZODB-Dev mailing list  -  ZODB-Dev@zope.org

Reply via email to