1. 31 Aug, 2004 3 commits
  2. 27 Aug, 2004 2 commits
  3. 26 Aug, 2004 2 commits
    • Tim Peters's avatar
      Merge rev 27279 from 3.3 branch. · a1c7a05f
      Tim Peters authored
      Transaction.begin() didn't do anything.
      
      begin() is supposed to abort the current transaction, but
      Transaction.begin() did not.  Calling begin() on a transaction
      *manager* worked fine, and is the intended way to do a begin()
      in 3.3.  But calling begin() on a Transaction object is still
      very easy to do (e.g., the older get_transaction().begin()
      spelling still works), and shouldn't be a subtle disaster.
      a1c7a05f
    • Tim Peters's avatar
      Transaction.begin() didn't do anything. · b4731cf6
      Tim Peters authored
      begin() is supposed to abort the current transaction, but
      Transaction.begin() did not.  Calling begin() on a transaction
      *manager* worked fine, and is the intended way to do a begin()
      in 3.3.  But calling begin() on a Transaction object is still
      very easy to do (e.g., the older get_transaction().begin()
      spelling still works), and shouldn't be a subtle disaster.
      b4731cf6
  4. 25 Aug, 2004 3 commits
  5. 23 Aug, 2004 3 commits
  6. 21 Aug, 2004 3 commits
  7. 20 Aug, 2004 1 commit
  8. 19 Aug, 2004 2 commits
    • Tim Peters's avatar
      Merge rev 27186 from trunk. · 40d192d9
      Tim Peters authored
      FileIterator.next():  the code for reading the user, description,
      and extension fields from a transaction was fatally confused,
      usually reading them out of the object pickle by mistake.  This
      caused several tools to display binary gibberish.
      40d192d9
    • Tim Peters's avatar
      FileIterator.next(): the code for reading the user, description, · 2a496112
      Tim Peters authored
      and extension fields from a transaction was fatally confused,
      usually reading them out of the object pickle by mistake.  This
      caused several tools to display binary gibberish.
      2a496112
  9. 18 Aug, 2004 2 commits
    • Tim Peters's avatar
      Merge rev 27179 from 3.3 branch. · 5aeb9653
      Tim Peters authored
      Forward port from Zope 2.7 branch.
      
      analyze_rec():  This produced spurious "len of unsized object" messages
      when a data record had a backpointer instead of a pickle.  Repaired.
      
      analyze(), analyze_trans():  Simplified overly elaborate iteration code.
      5aeb9653
    • Tim Peters's avatar
      Forward port from Zope 2.7 branch. · 3d5bb8a7
      Tim Peters authored
      analyze_rec():  This produced spurious "len of unsized object" messages
      when a data record had a backpointer instead of a pickle.  Repaired.
      
      analyze(), analyze_trans():  Simplified overly elaborate iteration code.
      3d5bb8a7
  10. 17 Aug, 2004 4 commits
  11. 13 Aug, 2004 3 commits
  12. 12 Aug, 2004 4 commits
    • Tim Peters's avatar
      Merge/port assorted ZODB changes checked into Zope3's ZODB copy. · c6407e23
      Tim Peters authored
      Please don't do that:  ZODB changes need to be done in the ZODB
      project.  Checkins to Zope3 have no effect on ZODB in reality.
      
      This includes:
      
      r26945 | jim | 2004-08-06 18:30:44 -0400 (Fri, 06 Aug 2004) | 6 lines
         M /Zope3/trunk/src/persistent/tests/test_persistent.py
      
      Updated to work with the versions of doctest from Python with versions
        greater than or equal to 2.3.0 and less than 2.4.0.a2 and with
        versions greater than 2.4.0a2.
      
      r26482 | srichter | 2004-07-13 13:07:03 -0400 (Tue, 13 Jul 2004) | 2 lines
         M /Zope3/trunk/src/transaction/__init__.py
         M /Zope3/trunk/src/transaction/_transaction.py
         M /Zope3/trunk/src/transaction/tests/test_transaction.py
      
      Converted XXX to TODO.
      
      r25953 | sidnei | 2004-06-23 13:14:20 -0400 (Wed, 23 Jun 2004) | 1 line
         M /Zope3/trunk/src/ZODB/interfaces.py
         M /Zope3/trunk/src/transaction/_transaction.py
      
      Add missing sortKey method to ZopeDBTransactionManager and DataManagerAdapter,
      and also add it to the interface.
      
      r25273 | philikon | 2004-06-06 04:43:57 -0400 (Sun, 06 Jun 2004) | 4 lines
      Changed paths:
         M /Zope3/trunk/src/BTrees
         M /Zope3/trunk/src/ZODB
         M /Zope3/trunk/src/persistent
      
      Ignore .so files.
      
      This fix should probably be merged to the original ZODB tree.
      c6407e23
    • Tim Peters's avatar
      5613e479
    • Tim Peters's avatar
      Update release date. · 11a699e2
      Tim Peters authored
      11a699e2
    • Tim Peters's avatar
      Merge/port checkins to ZODB code made from Zope3. · 0e480ec9
      Tim Peters authored
      This includes:
      
      r26945 | jim | 2004-08-06 18:30:44 -0400 (Fri, 06 Aug 2004) | 6 lines
         M /Zope3/trunk/src/persistent/tests/test_persistent.py
         M /Zope3/trunk/src/zope/event/tests.py
      
      Updated to work with the versions of doctest from Python with versions
        greater than or equal to 2.3.0 and less than 2.4.0.a2 and with
        versions greater than 2.4.0a2.
      
      r26482 | srichter | 2004-07-13 13:07:03 -0400 (Tue, 13 Jul 2004) | 2 lines
         M /Zope3/trunk/src/transaction/__init__.py
         M /Zope3/trunk/src/transaction/_transaction.py
         M /Zope3/trunk/src/transaction/tests/test_transaction.py
      
      Converted XXX to TODO.
      
      r25953 | sidnei | 2004-06-23 13:14:20 -0400 (Wed, 23 Jun 2004) | 1 line
         M /Zope3/trunk/src/ZODB/interfaces.py
         M /Zope3/trunk/src/transaction/_transaction.py
         M /Zope3/trunk/src/zope/app/rdb/__init__.py
         M /Zope3/trunk/src/zope/app/rdb/tests/test_zopedbtransactionmanager.py
      
      Add missing sortKey method to ZopeDBTransactionManager and DataManagerAdapter, and also add it to the interface.
      
      r25330 | alga | 2004-06-10 10:07:45 -0400 (Thu, 10 Jun 2004) | 4 lines
         M /Zope3/trunk/src/ZODB/Connection.py
         M /Zope3/trunk/src/ZODB/interfaces.py
         M /Zope3/trunk/src/ZODB/tests/testConnection.py
      
      Added an IConnection interface declaration on ZODB Connection.
      
      Jim says Tim Peters will be mad at him, but that's the right way to go.
      
      r25273 | philikon | 2004-06-06 04:43:57 -0400 (Sun, 06 Jun 2004) | 4 lines
      Changed paths:
         M /Zope3/trunk/src/BTrees
         M /Zope3/trunk/src/ZODB
         M /Zope3/trunk/src/persistent
      
      Ignore .so files.
      
      This fix should probably be merged to the original ZODB tree.
      0e480ec9
  13. 11 Aug, 2004 8 commits
    • Tim Peters's avatar
      Merge rev 27039 from ZODB 3.3 branch. · 151db346
      Tim Peters authored
      These are preliminary 3.3c1 release changes.
      151db346
    • Tim Peters's avatar
      Mechanical changes in prep for 3.3c1 release. · 540c6193
      Tim Peters authored
      540c6193
    • Tim Peters's avatar
      7f0218dc
    • Tim Peters's avatar
      ad97a3ca
    • Tim Peters's avatar
      f2d3aa43
    • Tim Peters's avatar
      27c47f77
    • Tim Peters's avatar
      Merge rev 26990 from ZODB trunk. · a91b1d4c
      Tim Peters authored
      Improve thread-death error reporting in tests.
      
      Reworked the way some of the ZEO tests use threads, so that unittest is
      more likely to notice the real cause of a failure (which usually occurs in
      a thread), and less likely to latch on to spurious problems resulting from
      the real failure.
      
      Detail:  The TestThread class got the (unittest) test case as an argument,
      and remembered it.  If the run() method saw the thread die with an
      exception, it called testcase.fail() with the formatted exception.  But
      this can't work as apparently intended:  unittest's fail() raises an
      AssertionError then, and the piece of unittest running the test expects
      to catch that exception and append the message to the result object's
      list of failures.  But the piece of unittest running the test isn't on
      *this* thread's call stack!  It's on the main thread's call stack.
      So unittest simply raised an exception that wasn't noticed by anything,
      and the thread died then, leaving a traceback somewhere in the middle
      of the output.  unittest didn't know anything about that, and sometimes
      thought the test passed despite the thread failure.
      
      Alas, when a thread dies like this it's also got a decent chance of
      leaving things in a state where the test's final checking code can't
      succeed, but the checking code doesn't know the thread died either,
      and spurious unittest failures and errors could get reported then.
      
      Reworked things so that only the main thread ever tries to tell
      unittest that a test failed.  A TestThread remembers an exception-
      death now, but doesn't report it until the main thread tries to join
      it.  This way unittest knows the test failed; records and reports
      the true cause of failure; and, because tests generally join all their
      threads before doing their final checking, unittest stops the test
      before final checking if a thread death occurred, and so there's
      less chance of seeing reports of spurious errors and failures.
      a91b1d4c
    • Tim Peters's avatar
      Improve thread-death error reporting in tests. · d0268448
      Tim Peters authored
      Reworked the way some of the ZEO tests use threads, so that unittest is
      more likely to notice the real cause of a failure (which usually occurs in
      a thread), and less likely to latch on to spurious problems resulting from
      the real failure.
      
      Detail:  The TestThread class got the (unittest) test case as an argument,
      and remembered it.  If the run() method saw the thread die with an
      exception, it called testcase.fail() with the formatted exception.  But
      this can't work as apparently intended:  unittest's fail() raises an
      AssertionError then, and the piece of unittest running the test expects
      to catch that exception and append the message to the result object's
      list of failures.  But the piece of unittest running the test isn't on
      *this* thread's call stack!  It's on the main thread's call stack.
      So unittest simply raised an exception that wasn't noticed by anything,
      and the thread died then, leaving a traceback somewhere in the middle
      of the output.  unittest didn't know anything about that, and sometimes
      thought the test passed despite the thread failure.
      
      Alas, when a thread dies like this it's also got a decent chance of
      leaving things in a state where the test's final checking code can't
      succeed, but the checking code doesn't know the thread died either,
      and spurious unittest failures and errors could get reported then.
      
      Reworked things so that only the main thread ever tries to tell
      unittest that a test failed.  A TestThread remembers an exception-
      death now, but doesn't report it until the main thread tries to join
      it.  This way unittest knows the test failed; records and reports
      the true cause of failure; and, because tests generally join all their
      threads before doing their final checking, unittest stops the test
      before final checking if a thread death occurred, and so there's
      less chance of seeing reports of spurious errors and failures.
      d0268448