| Commit message (Collapse) | Author | Age |
|\
| |
| | |
ssl_channel_credentials to use None by default
|
| | |
|
| | |
|
|\ \
| | |
| | | |
Python: py3 compatibility for test runner & loader
|
|\ \ \
| | | |
| | | | |
replace uses of iteritems with six.iteritems
|
|\ \ \ \
| | | | |
| | | | | |
make iterators python3-compatible
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Since the default behavior is quite sane, support just calling ssl_channel_credentials() without explicitly specifying ssl_channel_credentials(None, None, None).
This changes the pattern ssl_channel_credentials(server_crt, None, None) to ssl_channel_credentials(server_crt)
Signed-off-by: Christian Svensson <blue@cmd.nu>
|
| | | | | |
|
| |/ / / |
|
| |/ / |
|
|/ / |
|
| |
| |
| |
| |
| |
| |
| | |
Apparently Python can call arbitrarily deallocation code whenever its
allocator is invoked, which can cause output from gRPC core to stderr,
which can happen on the thread that is emptying the stderr pipe, thus
causing the stderr pipe to deadlock on itself.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Both have to do with the test runner's handling of the tests. With one
it's the read thread somehow outliving the other threads (e.g. with
ctrl-C). The other is due to a filled OS-level pipe's buffer causing a
block while code is still holding the GIL in some gRPC core function. We
can't empty the buffer from Python because the GIL is held, and the OS
can't unblock because it's waiting for the buffer to get cleared:
deadlock.
|
| | |
|
|/ |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Writing "<format string containing one directive> % <expression>"
instead of "<format string containing one directive> % (<expression>,)"
is always a problem; the particular problem in this case came from
face.Abortion being a subclass of a class created with
collections.namedtuple.
|
|
|
|
|
|
|
|
|
| |
functools.wrap is only warranted to work with functions and methods but
logging_pool is warranted to work with callable behaviors, so using
functools.wrap has been wrong all along.
The particular incompatibility motivating this correction is that
callable objects do not have a "__name__" attribute.
|
|
|
|
|
|
|
| |
In 4a9b1c69880db4fa8b41 I mistakenly added statements to test
test_constants.PARALLELISM RPCs made in parallel to the
testSequentialInvocations test method rather than the
testParallelInvocations test method. How embarrassing!
|
|
|
|
|
|
|
| |
On the service-side, an operation isn't successfully completed with
just the conclusion of transmission to the other side; local ingestion
of the status and code must be completed as well before termination
callbacks are called.
|
|
|
|
|
| |
This exposes a bug somewhere in how channel connectivity events get
published on completion queues. Investigation remains active.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
The ideal fix would be to have a tox test command for running the
interop server and client.
|
|
This reorganizes the Python code, scraps the current testing
infrastructure, and implements a simple test discovery and run script
based on the standard Python unittest library so we can trust that our
tests are running.
|