- 24 Jun, 2005 1 commit
-
-
Tim Peters authored
_triggerbase: Make new-style class, for better debugability. Windows trigger.__init__: Simplify more. The trigger can connect after the other end has done bind() and listen(); no need to wait for an accept() too, and so no need to fiddle with blocking/ non-blocking or "expected" socket.error's either.
-
- 22 Jun, 2005 1 commit
-
-
Tim Peters authored
Largely rewritten. remove_loop_callback(): There were two definitions of this function. Deleted one, changed the other to use enumerate(). poll(): This was trying to repair a bug in Python 2.2's asyncore.poll(). 2.2 is no longer supported, so removed this poll(). _start_loop(), _stop_loop(): Removed; functionality folded into reworked loop(). loop(): The signature of asyncore.loop() changed in 2.4, but this still had "the old" signature. Instead of sniffing the signature of the Python in use, this does a saner thing: the original asyncore.loop is captured, and called from the body of this loop(). That way, (A) we don't care what asyncore.loop's signature is; and, (B) we still call the original Python code, so debugging prints and breakpoints (etc) stuffed into Python's asyncore no longer "vanish by magic" when ZEO is used.
-
- 21 Jun, 2005 1 commit
-
-
Tim Peters authored
Massive refactoring, to move the bulk of the trigger code into an OS-indepedent base class. __repr__: Use the postive_id function to embed the machine address. Addresses with the high bit set trigger warnings before Python 2.4, and come out as negative numbers in 2.4+. Windows trigger.__init__: Don't make 50 guesses at a port number to use, let Windows pick an available port for us. Also documented the baffling single-thread socket setup dance, which took an hour to reverse-engineer (in large part because it used a bare "except" w/ no clue as to why).
-
- 17 Jun, 2005 2 commits
-
-
Jim Fulton authored
-
Jim Fulton authored
reachable from multiple connections. Previously, we thought that we could limit the time that an object was new to a single savepoint, but that didn't work because savepoints of different connections are too independent. Now an object is considered new for the full extent of the transaction in which it was created. Made it possible to use connection add methods to explicitly control the database an object is added too.
-
- 16 Jun, 2005 8 commits
-
-
Tim Peters authored
TmpStore needs to delegate loadBefore().
-
Jim Fulton authored
-
Tim Peters authored
Remove needless "cleanup" code -- Transaction does not have a __del__ method (but probably did at some earlier time).
-
Jim Fulton authored
1. Construction of Connections is an implementation detail. ZODB client code should never construct connections directly. 2. __init__ is not a method of IConnection. It might be a method of some sort of connection factory api, if we had one.
-
Jim Fulton authored
connections. Connections now get their database and related data when they are constructed. They no longer throw away this information when they are closed. (The old design that threw away the database and related data did so to avoid memory leaks in Python 1.) Fixed a multi-database connection-management bug. (The fix necessitated the simplification.)
-
Jim Fulton authored
by virtue of being reachable from objects in databases, there is a danger of ambiguity when an object is reachable from multiple databases. This ambiguity can lead to very subtle bugs with the symtom that objects are in unexpected databases. Introduced a check to refuse to commit when the ambiguity exists. (This required changing the connection '_creating' attribute to a dictionary.)
-
Jim Fulton authored
Secondary connections always need to be made from an existing connection. Added check to make sure we don't get references across incompatible connections.
-
Jim Fulton authored
pass optional open arguments to secondary databases.
-
- 15 Jun, 2005 1 commit
-
-
Jim Fulton authored
savepoint.
-
- 14 Jun, 2005 1 commit
-
-
Tim Peters authored
Forward port from 2.7 branch. UndoSearch._readnext(): Add the transaction size to the return value.
-
- 10 Jun, 2005 2 commits
-
-
Tim Peters authored
the function was moved to serialize.py; this caused a Zope3 test to fail.
-
Tim Peters authored
-
- 09 Jun, 2005 8 commits
-
-
Jim Fulton authored
-
Jim Fulton authored
-
Tim Peters authored
Use a sane zdaemon tag.
-
Jim Fulton authored
- Added an "extended" reference format in preparation for adding cross-database references. - Simplified referencesf and get_refs, added doc strings, and moved get_refs to be with the other serialization code. Documented and slightly changed the api for get_refs. Updated client code accordingly.
-
Jim Fulton authored
- Added an "extended" reference format in preparation for adding cross-database references. - Simplified referencesf and get_refs, added doc strings, and moved get_refs to be with the other serialization code. Documented and slightly changed the api for get_refs. Updated client code accordingly.
-
Jim Fulton authored
be consistent with the code in serialize.py. (It currently isn't.)
-
Jim Fulton authored
database format. In particular, data records should always have two pickles.
-
Jim Fulton authored
-
- 06 Jun, 2005 4 commits
-
-
Tim Peters authored
checkCrossDBInvalidations(): This is too clever. Stick a sync() call back in to make it clearer.
-
Tim Peters authored
-
Tim Peters authored
checkCrossDBInvalidations: make this willing to wait longer in all, and increase the sleep time per failing loop iteration. The hope is this will allow the test to pass on slower and/or "too busy" machines. I can't test that, though, since I couldn't get the test to fail at all on a Windows or a Linux box.
-
Tim Peters authored
Point at correct zdaemon tag.
-
- 03 Jun, 2005 1 commit
-
-
Tim Peters authored
-
- 02 Jun, 2005 4 commits
-
-
Tim Peters authored
Revert rev 30607 -- Zope trunk actually does still use ZODB's _Persistence.c, although ZODB doesn't.
-
Tim Peters authored
-
Tim Peters authored
Port from ZODB 3.2. referencesf(): Use %r instead of %s format in the error message, else the pickle shown is full of unprintable characters.
-
Tim Peters authored
Remove unused code; Zope 2.8 already has its own copy.
-
- 31 May, 2005 2 commits
-
-
Tim Peters authored
Use a zdaemon tag.
-
Tim Peters authored
Prepare to stitch in zdaemon from a tag.
-
- 27 May, 2005 3 commits
-
-
Tim Peters authored
Use the same Zope3 tag as Zope 2.8.
-
Tim Peters authored
Connection (and IDataManager) grows a public .transaction_manager attribute. The related txn_mgr spelling of various method arguments is now deprecated, and a "transaction_manager" spelling is added.
-
Tim Peters authored
-
- 26 May, 2005 1 commit
-
-
Tim Peters authored
Change test.py to use zope.testing.testrunner, and update the latter to Jim's development version. Hardest part turned out to be teaching ZODB's setup.py how to "build" this version of zope.testing (it has a lot of packages in a test directory, where the latter is not itself a package). Incidentally repaired an oversight in building zope.interface too.
-