• Tim Peters's avatar
    Merge the ZODB part of Zope/branches/jim-fix-zclasses. · 05128835
    Tim Peters authored
    This doesn't have a lot of visible effect on standalone ZODB use, but
    is important for Zope 2.8.
    
    Here are checkin msgs from the branch relating to ZODB code:
    
        r29872 | jim | 2005-04-04 07:04:39 -0400 (Mon, 04 Apr 2005) | 3 lines
        Changed paths:
           M /Zope/branches/jim-fix-zclasses/lib/python/ZODB/serialize.py
    
        For instances of persistent classes, save a class-module/clas-name
        tuple if the class has a non-empty module string.
    
        ------------------------------------------------------------------------
        r29871 | jim | 2005-04-04 07:04:33 -0400 (Mon, 04 Apr 2005) | 6 lines
        Changed paths:
           M /Zope/branches/jim-fix-zclasses/lib/python/ZODB/Connection.py
    
        Changed sub-transaction abort code to not invalidate created objects.
        There's really no point, because created objects will be unreachable
        after invalidating old objects.  Also, if a created object is
        non-ghostifiable, it will try to load it's state again, and then
        either it would fail or it would load non-committed state.
    
        ------------------------------------------------------------------------
        r29870 | jim | 2005-04-04 07:04:27 -0400 (Mon, 04 Apr 2005) | 3 lines
        Changed paths:
           A /Zope/branches/jim-fix-zclasses/lib/python/ZODB/persistentclass.py
           A /Zope/branches/jim-fix-zclasses/lib/python/ZODB/persistentclass.txt
           A /Zope/branches/jim-fix-zclasses/lib/python/ZODB/tests/testpersistentclass.py
    
        Added ZClass-independent test of (and possible base class for)
        persistent-class support machinery.
    
        ------------------------------------------------------------------------
        r29867 | jim | 2005-04-04 07:03:48 -0400 (Mon, 04 Apr 2005) | 2 lines
        Changed paths:
           M /Zope/branches/jim-fix-zclasses/lib/python/transaction/_manager.py
    
        Added missing arguments to commit and abort.
    
        ------------------------------------------------------------------------
        r29774 | jim | 2005-04-01 06:24:27 -0500 (Fri, 01 Apr 2005) | 3 lines
        Changed paths:
           M /Zope/branches/jim-fix-zclasses/lib/python/transaction/__init__.py
    
        Changed to use methods of a threaded manager directly, rather than
        through wrapper functions.
    
        ------------------------------------------------------------------------
        r29773 | jim | 2005-04-01 06:24:25 -0500 (Fri, 01 Apr 2005) | 3 lines
        Changed paths:
           M /Zope/branches/jim-fix-zclasses/lib/python/transaction/_manager.py
    
        Added commit and abort methods to transaction managers.
        This makes direcr use of managers simpler.
    
        ------------------------------------------------------------------------
        r29101 | jim | 2005-02-10 07:44:52 -0500 (Thu, 10 Feb 2005) | 2 lines
        Changed paths:
           M /Zope/branches/jim-fix-zclasses/lib/python/ZODB/Connection.py
    
        Removed an unused attribute.
    
        ------------------------------------------------------------------------
        r29100 | jim | 2005-02-10 07:42:35 -0500 (Thu, 10 Feb 2005) | 3 lines
        Changed paths:
           M /Zope/branches/jim-fix-zclasses/lib/python/transaction/_transaction.py
    
        Changed an XXX comment to an ordinary comment, explaining the relevent
        issue.
    
        ------------------------------------------------------------------------
        r29099 | jim | 2005-02-10 07:41:58 -0500 (Thu, 10 Feb 2005) | 3 lines
        Changed paths:
           M /Zope/branches/jim-fix-zclasses/lib/python/ZODB/Connection.py
    
        Changed some XXX comments to ordinary comments explaining the relevent
        issues.
    
        ------------------------------------------------------------------------
        r29071 | jim | 2005-02-07 07:36:05 -0500 (Mon, 07 Feb 2005) | 3 lines
        Changed paths:
           M /Zope/branches/jim-fix-zclasses/lib/python/transaction/_transaction.py
    
        Added a sanity check to avoid registration of objects without a
        manager. (Perhaps this should be an assert.)
    
        ------------------------------------------------------------------------
        r29067 | jim | 2005-02-07 07:35:56 -0500 (Mon, 07 Feb 2005) | 15 lines
        Changed paths:
           M /Zope/branches/jim-fix-zclasses/lib/python/ZODB/Connection.py
    
        Changed the strategy for handling invalidation of classes.
        No-longer use setklassstate.  Instead, just call _p_invalidate, as
        with any other object.  This changes didn't break any tests, so I
        assume that this was untested. :(
    
        Changed the strategy for invalidating objects.  Non-ghostifiable
        objects will load their state when they are invalidated.  We have to
        worry about other invalidations that come in while this is happening.
        See the comment in _flush_invalidations.
    
        We need to force all invalidations to take this into account, by going
        through _flush_invalidations.  I haven't done this yet, but I have
        left some XXX comments in places where it needs to be done to remind
        myself that this needs to be done.
    
        ------------------------------------------------------------------------
        r29066 | jim | 2005-02-07 07:35:54 -0500 (Mon, 07 Feb 2005) | 8 lines
        Changed paths:
           M /Zope/branches/jim-fix-zclasses/lib/python/persistent/cPickleCache.c
    
        Changed the strategy for handling invalidation of classes.
        No-longer use setklassstate.  Instead, just call _p_invalidate, as
        with any other object.  This changes didn't break any tests, so I
        assume that this was untested. :(
    
        Change invalidation to not swallow errors. (Swallowing errors here was a
        travesty!)
    05128835
test_persistent.py 899 Bytes