1. 21 May, 2004 2 commits
    • Tim Peters's avatar
      · 1ccd62fd
      Tim Peters authored
      Collector #1330:  repozo.py -R can create corrupt .fs.
      When looking for the backup files needed to recreate a Data.fs file,
      repozo could (unintentionally) include its meta .dat files in the list,
      or random files of any kind created by the user in the backup directory.
      These would then get copied verbatim into the reconstructed file, filling
      parts with junk.  Repaired by filtering the file list to include only
      files with the data extensions repozo.py creates (.fs, .fsz, .deltafs,
      and .deltafsz).  Thanks to James Henderson for the diagnosis.
      1ccd62fd
    • Tim Peters's avatar
      The __future__ has arrived for generators. · 40fb2f29
      Tim Peters authored
      40fb2f29
  2. 19 May, 2004 2 commits
    • Tim Peters's avatar
      Collector #1208: Infinite loop in cPickleCache. · ab1f767a
      Tim Peters authored
      This fixes it, based on an approach suggested by Toby
      Dickenson.  The triggering condition wasn't entirely
      sane, so was very rare:  a persistent object with a
      __del__ method that referenced an attribute of self.
      
      scan_gc_items():  Look at persistent objects accessed
      while this is running at most once.
      
      New test checkMinimizeTerminates():  This spawns a thread
      that will in fact run forever if you don't recompile
      cPickleCache.c.  The test suite will keep running, but
      checkMinimizeTerminates will fail, and all future calls
      to cacheMinimize() will be effectively ignored (so other
      bad things may happen as a result).
      ab1f767a
    • Tim Peters's avatar
      checkFullSweep() and checkMinimize(): removed time.sleep(3) calls, and a comment block explaining · 47db2515
      Tim Peters authored
      why the sleeps are needed.  The explanation (and the
      sleeps) didn't make sense -- must be left over
      from a cache implementation before my time.
      47db2515
  3. 14 May, 2004 8 commits
  4. 11 May, 2004 3 commits
  5. 10 May, 2004 2 commits
  6. 07 May, 2004 1 commit
    • Tim Peters's avatar
      Collector 1309: ZODB.DB.DB.cacheExtremeDetail reports wrong reference count · a63883fd
      Tim Peters authored
      The refcount reported for a ghost was one too small, because the code for
      ghosts and non-ghosts was the same, and presumably "it's a feature" that
      the code for non-ghosts deliberately lies about the true Python refcount,
      in order (guessing here) to report what the count would have been if the
      cPickleCache didn't exist.  But while the cPickleCache holds on to a real
      reference to non-ghost objects, it does not hold a real reference to ghost
      objects, so subtracting "an extra" count for all objects made it appear
      that non-referenced ghosts exist in the cache (which doesn't actually
      happen).
      
      What a tangled web we weave ...
      a63883fd
  7. 05 May, 2004 4 commits
  8. 04 May, 2004 1 commit
  9. 03 May, 2004 11 commits
  10. 01 May, 2004 1 commit
  11. 30 Apr, 2004 1 commit
  12. 29 Apr, 2004 2 commits
  13. 27 Apr, 2004 2 commits