1. 28 Aug, 2002 4 commits
    • Guido van Rossum's avatar
      Another bunch of small cleanups and fixes. · 695f2ef4
      Guido van Rossum authored
      Open the cache later to avoid scanning it twice if a connection is
      made right away.
      
      ClientStorage.close() is now idempotent.
      
      ClientStorage stores its addr argument as self._addr so the test suite
      doesn't have to dig it out of the rpc manager to reopen the storage as
      readonly.
      
      Renamed some of the callbacks into the client for clarity:
      begin -> beginVerify
      end -> endVerify
      invalidate -> invalidateVerify
      Invalidate -> invalidateTrans
      695f2ef4
    • Jeremy Hylton's avatar
      Add tests of serialno behavior on version abort and commit. · 365c17b6
      Jeremy Hylton authored
      Also refactor the test code to use _abortVersion() and _commitVersion().
      365c17b6
    • Guido van Rossum's avatar
      A bouquet of minor code and comment cleanups. · 3b20f9da
      Guido van Rossum authored
      Note that the checkModifyAfterAbortVersion() test still fails; Jeremy
      wants to change abortVersion in FileStorage and DemoStorage to revert
      the serialno to the last nonversion serialno instead of assigning a
      brand new serialno, so I'm holding off on invalidating the cache in
      ClientStorage.abortVersion.
      
      Also note that on Red Hat 7.2, the ZEO test suite hangs in
      checkCommitLock2OnAbort or checkCommitLock2OnCommit; we'll try to
      debug this later today.
      3b20f9da
    • Jim Fulton's avatar
      Added a test to check that abortVersion and commitVersion assign new · ec536904
      Jim Fulton authored
      serials. Modified FileStorage and DemoStorage to pass this test.
      ec536904
  2. 27 Aug, 2002 9 commits
  3. 26 Aug, 2002 2 commits
  4. 23 Aug, 2002 4 commits
  5. 22 Aug, 2002 4 commits
    • Jeremy Hylton's avatar
      Remove unused imports. · a0781eb5
      Jeremy Hylton authored
      a0781eb5
    • Jeremy Hylton's avatar
      There were two copies trigger! · 63f03ca5
      Jeremy Hylton authored
      The one in ZEO/trigger.py was the good code, but we want it to live in
      ZEO/zrpc/trigger.py.  This checkin makes that change.
      
      The key checkin of ZEO/trigger.py had this checkin comment:
      Fix trigger close/__del__.
      
      The close() mechanism for an asyncore file_dispatcher is not safe to
      call multiple times.  It's calling os.close() on a file descriptor
      (int).  Guido observed that if you call close() twice, you could be in
      trouble:  1) First close() call closes FD 6.  2) Another bit of code
      opens a new file, getting FD 6.  3) Second close() call closes FD 6.
      Waah!  FD 6 is some other file.
      
      The workaround attempt here is to define a close() method on a trigger
      that only closes the file descriptors the first time.
      
      Also, make sure that both file descriptors are closed.  The previous
      version only closed the read-end of the pipe.
      63f03ca5
    • Jeremy Hylton's avatar
      Cleanup implementation of string accumulation in handle_write(). · e38b0c9b
      Jeremy Hylton authored
      Boost the accumulator limit to 60000.
      Use "".join() to accumulate multiple strings, since it is not unusual
      to have more than 2 strings to join together.
      
      Add comment explaining why we do this stuff.
      e38b0c9b
    • Barry Warsaw's avatar
      Added TransactionTooLargeError which is subclassed from · b6b93862
      Barry Warsaw authored
      StorageTransactionError.  This exception is raised when a transaction
      exhausts some finite storage resource.  E.g. a transaction changing a
      huge number of objects could fill a Berkeley lock table.
      
      Also, removed some unnecessary `pass' statements, and improved
      consistency in class docstrings (first line is a complete sentence).
      b6b93862
  6. 16 Aug, 2002 10 commits
  7. 15 Aug, 2002 2 commits
    • Jeremy Hylton's avatar
      Another attempt to make testHoserStoppage work consistently. · b2a8a355
      Jeremy Hylton authored
      The order in which the tpc_finish() method of the jars is called is
      dependent on the order in which objects are returned from
      dict.values().  There is no way to write a test that works on all
      platforms that produces a consistent result in dict.values(), so stop
      trying.
      
      Instead, have the jars explicitly coordinate their tpc_finish()
      methods so that the first call always succeeds and the second call
      always fails.
      b2a8a355
    • Jeremy Hylton's avatar
      Frontport bug fixes in ConflictResolution to the trunk. · ddd1218d
      Jeremy Hylton authored
      The main idea in the bug fix is to recover more gracefully when
      something goes wrong trying to load classes for conflict resolution.
      
      XXX This accidentally got checked in on the Zope 2.5 branch first.
      ddd1218d
  8. 14 Aug, 2002 5 commits