1. 29 Aug, 2002 4 commits
  2. 28 Aug, 2002 13 commits
  3. 27 Aug, 2002 9 commits
  4. 26 Aug, 2002 2 commits
  5. 23 Aug, 2002 4 commits
  6. 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
  7. 16 Aug, 2002 4 commits
    • Jeremy Hylton's avatar
      Add end_transaction() method. · d6730dbb
      Jeremy Hylton authored
      Use this method to set self._transaction to None and notify another
      thread.
      d6730dbb
    • Jeremy Hylton's avatar
      Move tpc_abort() below tpc_begin(). · c67abb1b
      Jeremy Hylton authored
      c67abb1b
    • Jeremy Hylton's avatar
      Further simplifications of the tpc_cond code in tpc_begin(). · 5809a29a
      Jeremy Hylton authored
      Not only can we move the assignment of self._transaction about the
      timestamp / id initialization, but we can eliminate the test for
      self._server being None.  It will never be None.
      
      self._server is the first instance variable initialized by
      __init__().  It is also assigned to in notifyConnected() and
      notifyDisconnected(), which do not assign it to None.
      5809a29a
    • Tim Peters's avatar
      ClientStorage: · 9c1884de
      Tim Peters authored
      _basic_init():  repair tpc_cond comments in light of recent changes.
      tpc_begin:  when self._server is None, do tpc_cond.notify() to let
      other threads waiting for "_transaction is None" to continue.
      9c1884de