- 17 Dec, 2002 1 commit
-
-
Lennart Regebro authored
Merge to HEAD: The ZEO unit tests and wo_pcgi.py didn't run on Windows if the path to the python executable included a space.
-
- 16 Dec, 2002 3 commits
-
-
Barry Warsaw authored
storage's artifacts. Some tests expect to reconnect in read-only mode to a previously created storage.
-
Jeremy Hylton authored
Starts near the end of the file and reads forward, looking for a complete snapshot. If it doesn't find one, move farther from the end and repeat. XXX This approach does N**2 reads, where N is the number of times we need to move further back and retry. When we move backwards, we double the distance from the end of the file.
-
Jeremy Hylton authored
This processes the whole file from the beginning collecting info about active / blocked transactions. This version is preliminary because it needs to start at the end and backup until it has enough information.
-
- 13 Dec, 2002 18 commits
-
-
Barry Warsaw authored
-
Jeremy Hylton authored
-
Jeremy Hylton authored
tpc_begin() doesn't return anything anyway. Rename transaction to txn to make lines shorter.
-
Jeremy Hylton authored
-
Jeremy Hylton authored
-
Jeremy Hylton authored
Should the deadline by checked inside this final loop waiting for wrappers to finish?
-
Jeremy Hylton authored
Get ZClasses working. (Tested this time.) Add some more comments and add XDECREFs to avoid leaks. Remove redundant check of ExtensionClass in get_class(). Apparent fix for ZClass persistent_id problem.
-
Barry Warsaw authored
doesn't put .loop() in the package namespace. Use the full dotted path to the function.
-
Barry Warsaw authored
which doesn't put .loop() in the package namespace. Use the full dotted path to the function.
-
Barry Warsaw authored
which doesn't put .loop() in the package namespace. Use the full dotted path to the function. Also, fix a docstring typo.
-
Barry Warsaw authored
ThreadedAsync which doesn't put .loop() in the package namespace. Use the full dotted path to the function.
-
Jeremy Hylton authored
-
Barry Warsaw authored
-
Barry Warsaw authored
FileIterator.__len__(): Add this for Python 2.1 support.
-
Barry Warsaw authored
Windows doesn't have it until Python 2.3
-
Barry Warsaw authored
-
Barry Warsaw authored
admin address of the subprocess. Better to gulp 'em now than sip 'em later. shutdown_zeo_server(): Same thing here, but notice that on Windows, the recv() can raise an ECONNRESET, which I believe we can just ignore. (Will test this with Tim shortly.)
-
Barry Warsaw authored
Instead use self.new_dest() to get a new destination storage. XXX It would still be useful to check for cross-storage-implementation restores. IOW, fs->bdb, bdb->fs (others?).
-
- 12 Dec, 2002 16 commits
-
-
Jeremy Hylton authored
-
Jeremy Hylton authored
-
Jeremy Hylton authored
-
Jeremy Hylton authored
-
Barry Warsaw authored
the warnings until the other fixes are ported to ZODB4. Added an XXX to memind me.
-
Barry Warsaw authored
function. This was a nasty decoy (am I using that term correctly? :). Because we're worried about backward compatibility, for now we'll rebind asyncore.loop() to a function that prints a warning and then calls loop(). Eventually we'll take this away so you have to call ThreadedAsync.loop() explicitly.
-
Barry Warsaw authored
through the sneakily rebound asyncore.loop().
-
Barry Warsaw authored
rename UnixTests to FileStorageTests, and add a simple BDBTests class to use Berkeley Full storage. Rewrite to use the new forker module api. WindowsTests: Removed.
-
Barry Warsaw authored
rename UnixConnectionTests to FileStorageConnectionTests, and add a simple BDBConnectionTests class to use Berkeley Full storage. WindowsConnectionTests: Removed.
-
Barry Warsaw authored
DummyDB.invalidate(): Add **kws since some of the tests try to use keyword arguments. Removed redundant keyword arguments from various openClientStorage() calls.
-
Barry Warsaw authored
-
Barry Warsaw authored
makes little sense to call the server script `winserver.py'. That's gone now, in favor of this zeoserver.py script. Changes include: main(): Accept a -C option pointing to a temp file containing a ZConfig storage section. This reads the file and creates the so described storage, then removes the temp config file. It creates an administrative server which opens an `admin' port which is used to os._exit() this process, with the following protocol. The first time the admin port is connected to, an ack character is sent from zeoserver. This is necessary to coordinate the tests so that they are assured the server is running and responding before it tries to do more. Otherwise, some tests were vulnerable to timing bugs where the shutdown connect happened before the server was ready to accept them. The second connect exits the server process just like before. Copious log entries are written. This script also cleans up after the storages are closed, by calling the storage's .cleanup() method if it exists (FileStorage and the Berkeley storages both implement this method).
-
Jeremy Hylton authored
-
Barry Warsaw authored
and Unix. We actually use the Windows code as the basis for the new approach so there's some hope that this will actually work on Windows <wink>. Tim will verify once the checkins are finished. start_zeo_server(): Is now the blessed way of starting a ZEO server, and it primarily takes a ZConfig storage section string as its argument. This it writes to a temp file and passes -C to the zeoserver.py script, which parses that temp file and creates the underlying storage. zeoserver.py is responsible for deleting the temp file. zeoserver opens an `admin' port which is used to quit the server, but the protocol has been expanded slightly. The first time the admin port is connected to, an ack character is sent from zeoserver. This is necessary to coordinate the tests so that they are assured the server is running and responding before it tries to do more. Otherwise, some tests were vulnerable to timing bugs where the shutdown connect happened before the server was ready to accept them. The second connect exits the server process just like before. start_zeo_server() returns a 3-tuple. The first element is the (host,port) tuple of the ZEO server, the second is the (host,port) tuple of the admin socket, and the third is the pid of the spawned child process. shutdown_zeo_server(): The blessed way to shut down a zeoserver.py process. Takes an admin (host,port) tuple, connects to that and writes a log entry.
-
Jeremy Hylton authored
The get_class() function will not find a class for a ZClass, but it shouldn't fail. Fix this by making the class an output paramter got get_class() and returning 1/0 for success / failure. A ZClass should succeed trivially because it is not an extension class.
-
Barry Warsaw authored
asyncore.loop() which really isn't.
-
- 10 Dec, 2002 2 commits
-
-
Barry Warsaw authored
tests, including read_only tests.
-
Barry Warsaw authored
create the specific storage instances. This lets us easily generalize the tests (the Unix ones at least ;) to use the Berkeley Full storage.
-