• Jeremy Hylton's avatar
    Remove the cache_deactivate_after argument from the cPickleCache · c17caeff
    Jeremy Hylton authored
    constructor, since it is ignored and there is no current plan to
    support two caches with almost-but-not-quite-the-same arguments.
    
    This change has effects in many files.  The Connection and DB don't
    pass this argument and don't bother setting it explicitly when it is
    reset via DB APIs like setCacheDeactivateAfter().  XXX These APIs
    remain, since existing code may depend on them, but they have no
    effect.
    
    New policy in cPersistence.c: A Persistent object can't have its
    _p_jar set or deleted once it is in a cache.  Persistent already
    implemented this policy for _p_oid; it seems safer to do the same for
    the jar.
    
    Add ringlen() method to cache objects (implemented as cc_ringlen).
    This returns the length of the doubly linked list of non-ghost
    objects.  Same as len(cache.lru_items()), but more efficient.  Only
    used for testing at the moment.
    
    In ring_corrupt(), don't raise a new exception if one has already been
    set.  The old behavior masked useful information about the original
    error / traceback.
    c17caeff
cPersistence.c 21.2 KB