1. 22 Dec, 2004 1 commit
    • Tim Peters's avatar
      Collector 1536: ClientStorage.__init__ ignores cache_size. · a1c2a551
      Tim Peters authored
      Also split test checkRollover into two tests,
      checkDisconnectedCacheWorks (persistent ZEO cache large enough
      to satisfy all requests) and checkDisconnectedCacheFails (cache
      too small to satisfy all requests while disconnected).
      a1c2a551
  2. 21 Dec, 2004 5 commits
    • Tim Peters's avatar
      More cleanup, and a new problem. Notable: · 95543cf0
      Tim Peters authored
      Object.serialize_header():  Stopped stuffing the version string into this
      notion of "a header".  Couldn't see any reason for it, and it was
      surprising.
      
      ClientCache.invalidate():  Added some asserts to clarify intended
      preconditions.  Alas, my guess that it was intended that the passed-in
      tid always be greater than the current tid turned out to trigger
      errors.  This gets complicated, and hasn't been resolved yet.  The
      problem is that the passed-in tid can be (in fact, always is) None
      during cache verification.  The code here *really* doesn't seem to
      be expecting that, and the on-disk cache file is clearly left in a
      wrong state (if we repopulated the cache from the disk file, the
      object would not look invalidated any more, it would look current).
      Dumped in a giant stack trace so I don't forget this; sent email to
      Jeremy asking if he recalls what the real intent was.
      95543cf0
    • Tim Peters's avatar
      More cleanup. Notable: · 81fccefb
      Tim Peters authored
      - Object.fromFile():  renamed `header_only` arg to `skip_data`.
        Skipping the data is what it does, while there are at least 3
        distinct notions of what "a header" means in this module.
        Object has two notions of "header" all by itself (& I'm still
        not sure why Object.serialize_header() considers the version
        string to be part of "the header").
      
      - FileCache.__init__():  log a warning if reuse=True but the
        given file path doesn't exist.  The code ignores `reuse` then
        (before, and now).  Not sure that's the best thing to do.
      81fccefb
    • Tim Peters's avatar
      More cleanup. Notable: · 124bbf37
      Tim Peters authored
      - Moved the logger object to module scope.  There's virtually
        no logging of any kind done here, and I suspect that's partly
        because the logging object was clumsy to get at.
      
      - Figured out what the code actually does when the cache size
        asked for doesn't match the actual size of a pre-existing
        cache file.  It apparently wanted to ignore the requested
        size then.  It probably shouldn't, but leaving that for later.
        Still, it left its own idea of the file size out of synch
        with the actual file size, and that was a bug.  For now,
        logged a warning when this happens, and changed the code to
        respect the actual file size.
      124bbf37
    • Tim Peters's avatar
      More cleanup. Notable: · 52ad94e4
      Tim Peters authored
      ClientCache:  Removed the .tid attribute.  It was never updated; the
      contained FileCache instance actually keeps track of the last tid.
      This had the happy side effect of fixing bugs in testSerialization:
      it was accessing .tid directly, and so was _always_ comparing None to
      None.  Changing the test to use .getLastTid() instead means it's now
      testing what it always intended to test.
      
      FileCache:  Removed some unused private attributes for tracking
      internal statistics.
      52ad94e4
    • Tim Peters's avatar
      More code and comment cleanups. Notable changes: · 476fc8eb
      Tim Peters authored
      FileCache:  removed the currentsize attribute.  It was initialized
      to 0 but never updated.  Some tests referenced it, but since it was
      always 0 those tests weren't getting any good from it.  Don't
      recall (or never knew) what its intended purpose may have been.
      
      FileCache.remove():  Repaired major bug.  This mistakenly stored
      the "this disk block is free now" status byte into the start of
      the serialized Object record's end_tid field (incorrect seek
      offset).  The in-memory structures were correct then, but got out
      of synch with the disk file; the latter then still claimed to have
      info for a "live" object revision, but that revision was actually
      dead, and the info on disk had a corrupt end_tid value.
      476fc8eb
  3. 20 Dec, 2004 1 commit
  4. 16 Nov, 2004 1 commit
    • Tim Peters's avatar
      Forward port from ZODB 3.2. · 2a65e10b
      Tim Peters authored
      Collector 1581:  fspack can blow up when .fs is corrupted
      
      Repaired three places where fspack referenced an undefined global while
      *trying* to raise CorruptedError.  Added new checkCorruptionInPack()
      test to verify the correct exception gets raised.
      2a65e10b
  5. 11 Nov, 2004 5 commits
  6. 06 Nov, 2004 1 commit
  7. 05 Nov, 2004 1 commit
  8. 26 Oct, 2004 1 commit
  9. 18 Oct, 2004 1 commit
  10. 15 Oct, 2004 2 commits
  11. 14 Oct, 2004 2 commits
  12. 08 Oct, 2004 2 commits
    • Tim Peters's avatar
      Merge rev 27791 from trunk. · 68a22353
      Tim Peters authored
      Duplicate import removed.
      68a22353
    • Tim Peters's avatar
      Merge revs 27788 and 27795 from Zope trunk. · 605281d8
      Tim Peters authored
      See Collector #1350.
      
      ghostify() and unghostify() detect one form of thread insanity
      now.  In a debug build, they abort the process if it happens.
      In a release build, unghostify() raises SystemError, and
      ghostify() ignores it (ghostify() can't raise an exception).
      605281d8
  13. 05 Oct, 2004 1 commit
  14. 04 Oct, 2004 1 commit
  15. 30 Sep, 2004 2 commits
    • Tim Peters's avatar
      Merge rev 27222 from Zope trunk. · 16e43305
      Tim Peters authored
      Collector #1517: History tab for ZPT does not work
      
      FileStorage.history() was reading the user, description,
      and extension fields out of the object pickle, due to
      starting the read at a wrong location.
      16e43305
    • Tim Peters's avatar
      Merge rev 27712 from Zope trunk. · bc46ade8
      Tim Peters authored
      Restore the Connection._opened attribute, actually used by
      DB.connectionDebugInfo().
      bc46ade8
  16. 29 Sep, 2004 2 commits
  17. 27 Sep, 2004 1 commit
    • Tim Peters's avatar
      Transaction.begin(). · 47595ddf
      Tim Peters authored
      When raising DeprecationWarning, point the warning machinery at
      the caller, not at Transaction.begin() itself.  As is (voice
      of experience <wink>), these warnings are darned near useless to
      track down code that needs to be changed on Zope trunk.  With the
      change, the warnings point directly at the deprecated uses.
      47595ddf
  18. 23 Sep, 2004 1 commit
  19. 17 Sep, 2004 4 commits
    • Tim Peters's avatar
      Check in stuff mistakenly committed from the Zope trunk. · 54d6b5a3
      Tim Peters authored
      Rev 26842 changed cache-size parameters to type byte-size.
      That's a good change, but it was checked in from a wrong place
      (from the Zope trunk's copy of ZODB).  Since we want Zope 2.8 to
      be usable with ZODB 3.3 too, I need to slam this change into
      3.3 now.
      
      Alas, I don't understand how ZODB+ZEO got stitched into the
      Zope trunk (I do understand how it got stitched into the
      Zope3 trunk, and into the X3 branch), and it looks like that
      was left in a poor state.
      54d6b5a3
    • Tim Peters's avatar
      Repair a Trove line I just damaged. · 993d6c16
      Tim Peters authored
      993d6c16
    • Tim Peters's avatar
      Pretend 3.3 final is being released. · cb6f3dd5
      Tim Peters authored
      So that if Zope X3-3.0 final is released while I'm on vacation,
      it will have the right ZODB stuff in it (although I still need
      to stitch this in to the Zope 3 and X3 trees).
      cb6f3dd5
    • Tim Peters's avatar
      New test checkReadConflictErrorClearedDuringAbort(). · a1833cc9
      Tim Peters authored
      This confirms that 3.3 didn't have the 3.2.4c1 bug wherein
      an explict transaction abort() failed to clear Connections'
      memory of ReadConflictErrors.
      a1833cc9
  20. 14 Sep, 2004 4 commits
  21. 10 Sep, 2004 1 commit