- 08 Aug, 2016 7 commits
-
-
Jim Fulton authored
uvloop is a bit faster than the standard asyncion event loop. Unfortunately, there's an issue with the ZEO tests and using uvloop in the ZEO server: https://github.com/MagicStack/uvloop/issues/39 Fortunately, most of the performamce benefits of using uvloop seems to be in the client. For now, we'll just use ivloop on the client side, as the incremental effort of using it in the server aren't worth futher wrestling with the tests. (I spent quite a bit of time just narrowing down the cause of the test issue.) With this PR, if uvloop can be imported, it will be used for the client. (uvloop requires Python 3.5 or later and doesn't support Windows.)
-
Jim Fulton authored
-
Jim Fulton authored
-
Jim Fulton authored
Dont pickle errors
-
Jim Fulton authored
-
Jim Fulton authored
Don't send errors as pickles. Send error names and class dict or arguments. This is a step toward eliminating instance pickles from the ZEO protocol. This is much messier than I'd like it to be because of the way both python and ZEO handle exceptions.
-
Jim Fulton authored
Server sync
-
- 05 Aug, 2016 10 commits
-
-
Jim Fulton authored
-
Jim Fulton authored
-
Jim Fulton authored
try caching again, off on a separate branch.
-
Jim Fulton authored
-
Jim Fulton authored
-
Jim Fulton authored
-
Jim Fulton authored
Conflicts: CHANGES.rst
-
Jim Fulton authored
- The ZEO server register method now returns the storage last transaction
-
Jim Fulton authored
Conflicts: CHANGES.rst
-
Jim Fulton authored
Client disconnect errors are now transient errors. Apparently, travis doesn't want to test this branch. :(
-
- 04 Aug, 2016 10 commits
-
-
Jim Fulton authored
And slightly with pip installing buildout (rather than bootstrapping).
-
Jim Fulton authored
-
Jim Fulton authored
They're annoying. :)
-
Jim Fulton authored
transaction, allowing the client to avoid an extra round trip during cache verification.
-
Jim Fulton authored
-
Jim Fulton authored
server_sync constructor argument to force a server round trip at the beginning of transactions to wait for any outstanding invalidations at the start of the transaction to be delivered.
-
Jim Fulton authored
-
Jim Fulton authored
Because ZODB 5 no-longer does
-
Jim Fulton authored
applications retry jobs that raise transient errors, jobs (e.g. web requests) with disconnect errors will be retried. Together with blocking synchronous ZEO server calls for a limited time while disconnected, this change should allow brief disconnections due to server restart to avoid generating client-visible errors (e.g. 500 web responses).
-
Jim Fulton authored
Zeo4 server support
-
- 03 Aug, 2016 4 commits
-
-
Jim Fulton authored
ZEO4 servers can send invalidations out of order with ``getInvalidations`` results, presumably because ``getInvalidations`` didn't get the commit lock. ZEO4 clients worked around this (maybe not directly) by queuing invalidations during cache verification. ZEO5 servers don't send invalidations out of order with ``getInvalidations`` calls and the ZEO5 client didn't need an invalidation queue, except they do need one to work correctly with ZEO4 servers. :/
-
Jim Fulton authored
The later seems to be necessary when running the test multiple times in a test run (as I did while debugging a test failure).
-
Jim Fulton authored
It turns out the ZEO4 server doesn't shutdown cleanly in tests without a shorter timeout (like the one I added for ZEO5). For now, this is just in the copy used in the ZEO5 tests. If I have to updatre the copy at some point (hopefully not), then I'll add this to ZEO4 proper.
-
Jim Fulton authored
To avoid spew about threads being left behind by tests. The normal multi-processing.Queue uses a thread to send data and the machinery for stopping this thread seems to be buggy (or inscrutable) on Linux, causing test runner spew that made output hard to interpret.
-
- 02 Aug, 2016 4 commits
-
-
Jim Fulton authored
Added an option to test the ZEO 5 client against the ZEO 4 server. This involved making a copy of the ZEO 4 server in ZEO.tests.ZEO4 and disabling tests of ZEO5-specific features. Testing revealed bugs in support for ZEO 4 servers, which were fixed.
-
Jim Fulton authored
Added an option to test the ZEO 5 client against the ZEO 4 server. This involved making a copy of the ZEO 4 server in ZEO.tests.ZEO4 and disabling tests of ZEO5-specific features. Testing revealed bugs in support for ZEO 4 servers, which were fixed.
-
Jim Fulton authored
-
Jim Fulton authored
-
- 30 Jul, 2016 2 commits
-
-
Jim Fulton authored
-
Jim Fulton authored
Added the ability to pass credentials when creating client storages.
-
- 28 Jul, 2016 3 commits
-
-
Jim Fulton authored
-
Jim Fulton authored
This is experimental in that passing credentials will cause connections to an ordinary ZEO server to fail, but it facilitates experimentation with custom ZEO servers. Doing this with custom ZEO clients would have been awkward due to the many levels of composition involved. In the future, we expect to support server security plugins that consume credentials for authentication (typically over SSL). Note that credentials are opaque to ZEO. They can be any object with a true value. The client mearly passes them to the server, which will someday pass them to a plugin.
-
Jim Fulton authored
Especially splitting the method used to send invalidations and info, since we no-longer send both in the same call.
-