Commit Graph

3379 Commits

Author SHA1 Message Date
Richard Belleville 24e03778ea Revert "Merge pull request #22373 from gnossen/creds_threads_and_breads"
This reverts commit 61a0212539, reversing
changes made to 19d8e2c551.
2020-03-17 12:36:22 -07:00
Richard Belleville 34e320a439 Working client 2020-03-17 19:13:10 +00:00
Lidi Zheng 1a0655d75c Add comment about why we can't use cimport 2020-03-17 10:55:52 -07:00
Lidi Zheng 65930d4be9 Remove the socket reader in shutdown 2020-03-17 10:40:05 -07:00
Richard Belleville 61a0212539
Merge pull request #22373 from gnossen/creds_threads_and_breads
Stop Leak of one thread per call in case of reference cycle
2020-03-17 10:21:04 -07:00
Lidi Zheng 19d8e2c551
Merge pull request #22165 from lidizheng/aio-benchmark
Integrate existing gRPC Python stack benchmarks with Bazel
2020-03-17 10:18:46 -07:00
Lidi Zheng 7be8cef10a
Merge pull request #22369 from lidizheng/health-default
[Health Checking] Make the empty service default to SERVING state
2020-03-17 00:17:31 -07:00
Richard Belleville 59b040d3c4 Stop leaking threads 2020-03-16 16:14:03 -07:00
Lidi Zheng 3779b12203 Enable skipped tests 2020-03-16 16:09:36 -07:00
Mariano Anaya da698286e4 Fix tests.json
Remove tests from the old branch (conflict resolution leftover issue).
2020-03-16 16:09:36 -07:00
Mariano Anaya 963429864e Skip failing tests due to a regression
Reported at https://github.com/grpc/grpc/issues/22302
2020-03-16 16:09:36 -07:00
Mariano Anaya bd4679439c Add 'resources' to bazel build file 2020-03-16 16:09:36 -07:00
Mariano Anaya a8f7dfe4c5 Update exception used in test 2020-03-16 16:09:36 -07:00
Mariano Anaya dff4a30b6c Fix build & address review comments
Fixes https://github.com/grpc/grpc/issues/20532
2020-03-16 16:09:36 -07:00
Mariano Anaya 4d492d28a7 Add test for full-duplex call 2020-03-16 16:09:36 -07:00
Mariano Anaya 8165cc2d97 Extend with more tests 2020-03-16 16:09:36 -07:00
Mariano Anaya 33e15156bb [WIP] Feedback on the PR 2020-03-16 16:09:36 -07:00
Mariano Anaya a3459d371d Code cleanup 2020-03-16 16:09:36 -07:00
Mariano Anaya f2aad7e54c Extend tests for secure channels & credentials 2020-03-16 16:09:36 -07:00
Mariano Anaya a1bb0bc6f8 Set error description 2020-03-16 16:09:36 -07:00
Mariano Anaya 764be7ed92 Improve error message by including the error code 2020-03-16 16:09:36 -07:00
Mariano Anaya 4ec09a0a26 [WIP] test call credentials 2020-03-16 16:09:36 -07:00
Mariano Anaya 88e922c03f Make the server test use SSL credentials 2020-03-16 16:09:36 -07:00
Mariano Anaya f44e4e2138 Renames according to PR comments 2020-03-16 16:09:36 -07:00
Lidi Zheng d43ac68bf3 Make the empty service default to SERVING state 2020-03-16 15:48:08 -07:00
Lidi Zheng c82f28d428 Use socket to synchronize cq and asyncio 2020-03-16 15:42:31 -07:00
Lidi Zheng 562f3ca5f5 Add port needs a FQN 2020-03-16 11:21:07 -07:00
Lidi Zheng 5d1651ff65 Don't graceful shutdown cq to avoid the deadlock 2020-03-16 11:10:07 -07:00
Richard Belleville f26f80d532 Log TID 2020-03-14 02:33:52 +00:00
Lidi Zheng 7622a2de38 Improve readability & fix a deadlock issue in _test_base 2020-03-13 15:56:25 -07:00
Richard Belleville 651f850076 Merge remote-tracking branch 'origin/master' into peers_method 2020-03-13 20:31:27 +00:00
Richard Belleville 7a129dac1c Don't let threads die over timed out RPCs 2020-03-13 20:29:08 +00:00
Lidi Zheng 7a51ca3330 Plumb through loop object & pass daemon=Ture in constructor 2020-03-13 11:59:35 -07:00
Lidi Zheng d725a7dae8 Make buildifier happy 2020-03-13 11:47:31 -07:00
Lidi Zheng 8fc872ed2e Enforce one cq and support many-thread many-loop env
- Label channel_argument_test as flaky

- Add compatibility test

- Add many-loop test case
2020-03-13 11:47:30 -07:00
Lidi Zheng fda2111af7
Merge pull request #22258 from lidizheng/aio-cq
[Aio] Add an alternative mode for the AsyncIO Stack
2020-03-13 11:40:20 -07:00
Richard Belleville 9ef83ee539 Merge remote-tracking branch 'origin/master' into peers_method 2020-03-12 20:30:08 +00:00
Lidi Zheng 086297b1e9
Merge pull request #22290 from lidizheng/fix-time-remaining
[Aio] Fix the test_time_remaining test
2020-03-10 15:57:59 -07:00
Lidi Zheng 2c783d7905 Fix the test_time_remaining test 2020-03-10 13:46:06 -07:00
Lidi Zheng 4741da3a11 Remove unused variable 2020-03-10 10:26:46 -07:00
Richard Belleville df1761ce50
Merge pull request #22218 from gnossen/simple_stubs_codegen
Generate simple stubs code
2020-03-09 19:04:13 -07:00
Richard Belleville f27b7fea21 Format 2020-03-09 17:25:00 -07:00
Richard Belleville 4e2ad2444d Remove the default value for simple stubs 2020-03-09 17:03:55 -07:00
Lidi Zheng 5b1ecef47f Simplify the Cython code 2020-03-09 15:38:34 -07:00
Lidi Zheng 5246a7c8ff Link to a TODO issue 2020-03-09 15:20:06 -07:00
Lidi Zheng 231f9c0c94 Improve readability 2020-03-09 15:20:06 -07:00
Lidi Zheng ce68d53dd1 Make pytype happy 2020-03-09 15:20:06 -07:00
Lidi Zheng 57fa6ce33c Make pylint happy 2020-03-09 15:20:06 -07:00
Lidi Zheng 7b7c0ba5fc Fix the SEGFAULT caused by initialization ordering 2020-03-09 15:20:06 -07:00
Lidi Zheng 0ee33a4762 Confusing 2020-03-09 15:20:06 -07:00
Lidi Zheng 1d13ec88de Segfault while shutting down 2020-03-09 15:20:06 -07:00
Lidi Zheng 221a50bf87 Allow multiple asyncio engine 2020-03-09 15:20:06 -07:00
Lidi Zheng efd483311c Remove loggings 2020-03-09 15:20:06 -07:00
Lidi Zheng b2839c2bae Add assertion in grpc_call_soon_threadsafe 2020-03-09 15:20:06 -07:00
Lidi Zheng 464d41f4b8 Great. Everything seems working. 2020-03-09 15:20:06 -07:00
Lidi Zheng e00f8b3492 Use a poller thread to replace custom IO manager 2020-03-09 15:20:06 -07:00
Lidi Zheng d9c55675c4
Merge pull request #22234 from lidizheng/aio-iomgr-op
[Aio] Optimize some details of AsyncIO IO manager
2020-03-09 14:15:19 -07:00
Richard Belleville c0b9694e4f Fix windows 2020-03-06 16:22:51 -08:00
Lidi Zheng a05abc0939 Mark it correctly with a TODO 2020-03-06 14:12:47 -08:00
Lidi Zheng 08b028ab82 Update the comment about the expect life span of the hack 2020-03-06 13:53:12 -08:00
Lidi Zheng 0d785bf22a Resolve AttributeError from bpo-39764 2020-03-06 13:47:35 -08:00
Lidi Zheng b00fc59d29 Link the TODO issue & revert to call_later 2020-03-05 16:26:41 -08:00
Lidi Zheng 33a406e6a8 Restore 3.6 compatibility 2020-03-05 12:11:22 -08:00
Lidi Zheng f87149c967 Destroy server without gil 2020-03-05 12:11:22 -08:00
Lidi Zheng 43fe171683 Optimize some implementation of IO manager 2020-03-05 12:11:22 -08:00
Lidi Zheng 87d01bf9e5
Merge pull request #22032 from ZHmao/implement-server-interceptor-for-unary-unary-call
[Aio] Implement server interceptor for unary unary call
2020-03-05 10:26:56 -08:00
yang-g 976fff1797 Create a macro to allow custom dualstack socket 2020-03-04 16:07:35 -08:00
Zhanghui Mao 09168c534f fix type annotation 2020-03-04 23:50:08 +08:00
Richard Belleville db27226b3f Don't run under gevent 2020-03-03 16:23:25 -08:00
Richard Belleville c9d90e5c1b Use wait_for_ready in tests 2020-03-03 15:18:04 -08:00
Richard Belleville 6b42bcc03d Sanity tests make me lose my sanity 2020-03-03 14:30:28 -08:00
Richard Belleville f921f01262 Format 2020-03-03 13:50:13 -08:00
Richard Belleville b5d69d2cd1 Clean up test 2020-03-03 12:24:13 -08:00
Richard Belleville 0fe463b2d3 Don't run on Python 2 2020-03-03 11:51:29 -08:00
Richard Belleville 0fd0948bfa Generate simple stubs 2020-03-02 22:11:24 -08:00
Zhanghui Mao 701ec0be20 add type annotation 2020-02-29 19:22:49 +08:00
Mark D. Roth 19e28b1353 Refactor code for gracefully switching child LB policies. 2020-02-28 08:17:54 -08:00
Zhanghui Mao 26985fd722 fix sanity checks 2020-02-28 22:06:31 +08:00
Mark D. Roth 144adbc194
Merge pull request #22147 from markdroth/xds_overprovisioning_capability
xds: send no-overprovisioning client capability and populate user_agent fields
2020-02-27 15:02:53 -08:00
Lidi Zheng 05fa7c9255 Remove logging from qps_worker.py 2020-02-27 13:39:34 -08:00
Lidi Zheng 18a5fbeb93 Make Buildifier happy 2020-02-27 13:38:31 -08:00
Mark D. Roth 28b950e407 Merge remote-tracking branch 'upstream/master' into xds_overprovisioning_capability 2020-02-27 12:09:16 -08:00
Moiz Haidry 88096215a3 Merge with HEAD 2020-02-26 19:59:06 -08:00
Lidi Zheng d657d73565 Integrate existing gRPC Python stack benchmarks with Bazel 2020-02-26 16:56:12 -08:00
Richard Belleville 5ef379870d Regenerate projects 2020-02-26 10:39:34 -08:00
Mark D. Roth b68f813e54 xds: send envoy.lb.does_not_support_overprovisioning client capability 2020-02-26 08:23:27 -08:00
Moiz Haidry 67565b767d CallCredentials debug string API 2020-02-25 16:09:03 -08:00
Zhanghui Mao 99e26eb647 Merge branch 'implement-server-interceptor-for-unary-unary-call' of github.com:ZHmao/grpc into implement-server-interceptor-for-unary-unary-call 2020-02-22 22:38:05 +08:00
Zhanghui Mao 128d030cdc upate test 2020-02-22 22:37:31 +08:00
Richard Belleville 7adf2f5c65 Implement first pass at Python XDS interop client.
I discovered a couple of existing shortcomings while implementing this
client that mean this is *not yet ready for inclusion in CI*. I
nonetheless want to get an early review and integrate this to the master
branch, in the interest of small easily reviewable code changes.

The first problem was that the bazel build has apparently never pulled
roots.pem in as a data dependency. This appears not to have been a
problem until XDS enters into the mix. This has been added into the
Bazel build with a small change to the pyx_library rule.

The larger problem is that there is currently no public Python API to
get a peer's identity from the client side. This is crucial to
determining the correctness of an interaction of a client-server pair
under XDS. I intend to add such an method to the RpcContext interface in
an upcoming PR and use it in the interop client. For the moment, I
simply fake the peer details.

Finally, I add a knob to run_xds_tests.py allowing multiple instances of
this test to exist at once. Multiple instances forwarding to the same
port cannot exist on GCE, so this enables multiple people to run tests
at the same time.
2020-02-21 23:28:19 +00:00
apolcyn 17036c1452
Merge pull request #21698 from apolcyn/bump_g_stands_for
Bump g stands for
2020-02-21 10:53:47 -08:00
Zhanghui Mao 958fb08d0d
Merge branch 'master' into implement-server-interceptor-for-unary-unary-call 2020-02-21 22:43:51 +08:00
Esun Kim 5f41758a76 Replaced gpr_asprintf with absl::StrFormat 2020-02-20 13:44:35 -08:00
Lidi Zheng 2eeb22de65
Merge pull request #21904 from lidizheng/aio-benchmark-client
[Aio] Benchmark automation
2020-02-20 10:15:01 -08:00
Lidi Zheng bbcaca2d83 Add uvloop argument 2020-02-19 13:09:46 -08:00
Lidi Zheng 8aff9ec592
Merge pull request #21987 from lidizheng/aio-doc
[Aio] Generate gRPC AsyncIO API Reference
2020-02-19 10:52:38 -08:00
Lidi Zheng c0e1dbc445 Update method naming & use os.path.join 2020-02-18 18:04:17 -08:00
Richard Belleville 3ed237d4bb
Merge pull request #21954 from gnossen/simple_stubs
Experimental: Implement Top-Level Invocation Functions Not Requiring an Explicit Channel
2020-02-18 16:32:01 -08:00
Lidi Zheng dbdb2cc5c9 Fix the non-protobuf scenario 2020-02-18 16:28:19 -08:00
Lidi Zheng c22b161d4e Improve benchmark automations:
1. Use monotonic time;
2. Improve readabilities;
3. Add two more fields for number of processes.
2020-02-18 16:28:18 -08:00
Lidi Zheng 728f5881a2 Remove unused exception check condition 2020-02-18 16:28:18 -08:00
Lidi Zheng 37552d3e62 Restrucutre exception catches 2020-02-18 16:28:18 -08:00
Lidi Zheng 5a7093639f Suppress server stop log spamming 2020-02-18 16:27:55 -08:00
Lidi Zheng f89448a9d5 Adding more comments 2020-02-18 16:27:29 -08:00
Lidi Zheng 72514e9bf4 Adding more comments & fix the outstanding channel count 2020-02-18 16:27:29 -08:00
Lidi Zheng 4819d8ba6e Improve scenario configs & plumb through channel arguments 2020-02-18 16:27:29 -08:00
Lidi Zheng 68be8a7742 Improve log readability & polish scenario parameters 2020-02-18 16:27:29 -08:00
Lidi Zheng 03e1bf1071 Fix already cancelled RPC 2020-02-18 16:27:29 -08:00
Lidi Zheng efe29d6945 Use the correct asyncio API 2020-02-18 16:27:29 -08:00
Lidi Zheng f97ad240da Remove pdb trace point 2020-02-18 16:27:29 -08:00
Lidi Zheng 50840080fb Make YAPF happy 2020-02-18 16:27:29 -08:00
Lidi Zheng a345803331 Fix the channel_ready usage 2020-02-18 16:27:29 -08:00
Lidi Zheng 7cb055b035 Make server parallel-able 2020-02-18 16:27:29 -08:00
Lidi Zheng 94525e5831 Parallelize sub worker creation 2020-02-18 16:27:29 -08:00
Lidi Zheng 8a70e757fa Re-enable all scenarios 2020-02-18 16:27:29 -08:00
Lidi Zheng ef853425cc Use picked port instead of assigned port 2020-02-18 16:27:29 -08:00
Lidi Zheng 5e2114d92f Fix the sub worker 2020-02-18 16:27:29 -08:00
Lidi Zheng 2d81bd203f Introduce sub workers 2020-02-18 16:27:28 -08:00
Lidi Zheng 7cdef95c4f Make buildifier happy 2020-02-18 16:26:41 -08:00
Lidi Zheng 6f343fc758 Make sanity tests happy 2020-02-18 16:26:41 -08:00
Lidi Zheng 49980a6db1 Make benchmark worker work 2020-02-18 16:26:41 -08:00
Lidi Zheng 2916c351d5 Use bytes instead of str 2020-02-18 16:26:41 -08:00
Lidi Zheng c2a9f15079 One more fix for the benchmark_client.py 2020-02-18 16:26:41 -08:00
Lidi Zheng ae44213482 Fix typos in worker_servicer.py 2020-02-18 16:26:41 -08:00
Lidi Zheng afb080787e Clean up self references 2020-02-18 16:26:41 -08:00
Lidi Zheng 1ee45615e2 Add benchmark client, server, and worker 2020-02-18 16:26:41 -08:00
Lidi Zheng c65bad469b
Merge pull request #22026 from lidizheng/defects-test
Improve invocation_defects_tests with assertions and comments
2020-02-18 16:25:33 -08:00
Lidi Zheng 4c14e507cb
Merge pull request #22028 from lidizheng/aio-health-checking-2
[Aio] Implement health checking servicer in AsyncIO
2020-02-18 16:18:58 -08:00
Lidi Zheng 2294b847a2 Add OVERALL_HEALTH 2020-02-18 14:30:10 -08:00
Lidi Zheng b62eca8558 Update the wording in comments 2020-02-18 13:58:29 -08:00
Lidi Zheng 4c602d4ad6 Add type annotations 2020-02-18 12:45:00 -08:00
Lidi Zheng 7917bd3074 Fix a typo 2020-02-18 12:26:39 -08:00
Lidi Zheng 750b602118 Filter out duplicated status 2020-02-18 12:25:11 -08:00
Lidi Zheng a729bd1828 Revert "Report every health state change"
This reverts commit b2d8509f78.
2020-02-18 11:42:59 -08:00
Lidi Zheng b2d8509f78 Report every health state change 2020-02-18 11:23:23 -08:00
Lidi Zheng fe4eba490c Further simplify the loop 2020-02-18 10:39:06 -08:00
Lidi Zheng 545f312050 Simplify the logic and improve readability 2020-02-18 10:36:56 -08:00
Zhanghui Mao 6fef56573e Implement server interceptor for unary unary call 2020-02-15 23:39:34 +08:00
Mehrdad Afshari 9a929c1546 Do not validate details when status code is OK 2020-02-14 21:25:47 -08:00
Lidi Zheng 5622e9e78c Make sanity tests happy 2020-02-14 12:56:14 -08:00
Lidi Zheng 37055f923f Make pylint happy 2020-02-14 12:44:19 -08:00
Lidi Zheng 908a8489f0 Make the version check more strict 2020-02-14 12:30:24 -08:00
Lidi Zheng 43788ac44e Update the copyright 2020-02-14 12:29:26 -08:00
Lidi Zheng 7b4d0b28c6 Implement health checking servicer in AsyncIO 2020-02-14 12:27:42 -08:00
Lidi Zheng e6278b5333 Make the test intent more obvious 2020-02-14 12:08:53 -08:00
Lidi Zheng 909ce6fee2 Point out it is testing client-side behavior 2020-02-14 11:19:35 -08:00
Lidi Zheng 12b0ddbc2b Improve the documentation based on suggestions 2020-02-14 11:03:27 -08:00
Lidi Zheng 479651e4cf Remove NoReturn to support <3.6.2 2020-02-14 11:03:27 -08:00
Lidi Zheng 0c7bf6c434 Make sanity tests happy 2020-02-14 11:03:27 -08:00
Lidi Zheng 1945c1108f Move the docstring from Cython to rst 2020-02-14 11:03:10 -08:00
Lidi Zheng d743e4390a Fill-in missing interfaces & improve rst template 2020-02-14 11:03:10 -08:00
Lidi Zheng f17ec928df Fix lack of empty line in the docstring 2020-02-14 11:01:48 -08:00
Lidi Zheng 4c59615f46 Format __init__.py 2020-02-14 11:01:48 -08:00
Lidi Zheng 3cdd83bdac Improve invocation_defects_tests with assertions and comments 2020-02-14 10:56:40 -08:00
Lidi Zheng 11953d1315
Merge pull request #21988 from lidizheng/aio-fast-close-2
[Aio] Make client-side graceful shutdown faster
2020-02-14 10:36:49 -08:00
Richard Belleville c01b39e55b Pull Python 3 only tests out to a separate repo 2020-02-13 16:06:32 -08:00
Lidi Zheng 7a50172cc8 Handle the intercepted call case 2020-02-13 16:00:54 -08:00
Lidi Zheng e0f8fe3254 Ensure channel isolation is maintained while graceful close 2020-02-13 15:05:50 -08:00
Jan Tattermusch a28d67f0bf
Merge pull request #21891 from jtattermusch/remove_useless_release_links
get rid of the https://grpc.io/release plague
2020-02-13 17:43:41 +01:00
Lidi Zheng 5a29f33a25 Optimize the logic & add comments 2020-02-12 14:32:17 -08:00
Richard Belleville a859b9a98a Whoops 2020-02-12 10:46:59 -08:00
Lidi Zheng 2789f83f85 Make pytype happy 2020-02-12 10:46:56 -08:00
Lidi Zheng d2832e4bc6 Update tests.json 2020-02-12 10:44:15 -08:00
Richard Belleville e99cdfa754 Copybara makes me wish I were dead 2020-02-11 18:13:13 -08:00
Richard Belleville d46cd97bc6 Merge remote-tracking branch 'origin/master' into simple_stubs 2020-02-11 17:53:56 -08:00
Richard Belleville 6eddf397e9 Reviewer advice 2020-02-11 17:44:56 -08:00
Richard Belleville 485e87cadf Move tests into single directory because Blaze is the worst 2020-02-11 17:41:09 -08:00
Lidi Zheng 3061ee37c0 Remove unused import 2020-02-11 16:46:48 -08:00
Lidi Zheng fbd213d04b Make client-side graceful shutdown faster 2020-02-11 16:46:23 -08:00
Esun Kim 0b26a2ff56 Added abseil-based sync 2020-02-11 14:44:25 -08:00
Richard Belleville df247fb33a Experimental API decorator 2020-02-10 16:47:43 -08:00
Richard Belleville 7c581ab099 Revert "Stop emitting experimental warnings"
This reverts commit 3daa32de4e.
2020-02-10 14:57:30 -08:00
Richard Belleville ff3088979a Why you incomplete, Python 3.6? 2020-02-10 14:53:33 -08:00
Richard Belleville 67a492c946 Yapf 2020-02-10 13:47:25 -08:00
Richard Belleville 753ab16ebb Remove unused return value 2020-02-10 13:43:22 -08:00
Richard Belleville 5474a76044 Pull out constant 2020-02-10 13:41:22 -08:00
Richard Belleville 0668c73cd2 Add copyright header 2020-02-10 13:40:21 -08:00
Richard Belleville 3daa32de4e Stop emitting experimental warnings 2020-02-10 13:39:43 -08:00
Richard Belleville e7e41e7610 Change up ordering 2020-02-10 13:37:43 -08:00
Richard Belleville 6e7f9f2ebe Add typing 2020-02-10 13:34:10 -08:00
Richard Belleville 70d3765712 Use debug level logging 2020-02-10 13:19:08 -08:00
Richard Belleville 09774aebfb Put libraries in order of reference 2020-02-10 13:18:18 -08:00
Richard Belleville 70837b3351 Don't attempt to run under setuptools 2020-02-10 12:44:08 -08:00
Richard Belleville 270880f440 Yapf 2020-02-10 11:56:38 -08:00
Lidi Zheng dc0509186c
Merge pull request #21921 from lidizheng/aio-fix-close-2
[Aio] Another fix for close mechanism on Windows
2020-02-10 11:46:59 -08:00
Richard Belleville 94efe57fb0 Buildifier 2020-02-10 11:37:55 -08:00
Richard Belleville 78c9ce56e5 Remove unguarded import of simple_stubs 2020-02-10 11:36:33 -08:00
Mark D. Roth bc9cc67fa6
Merge pull request #21857 from markdroth/json_old_api_remove
Remove old JSON API
2020-02-10 07:30:52 -08:00
Richard Belleville 36aa768290 Correct tests.json 2020-02-07 18:03:26 -08:00
Richard Belleville e5b287ead8 Yapf. Pylint 2020-02-07 16:51:25 -08:00
Richard Belleville ac864c7502 Make APIs experimental 2020-02-07 16:42:38 -08:00
Richard Belleville 84c8dc739e Add insecure_channel_credentials function 2020-02-07 15:59:24 -08:00
Richard Belleville a2e4a23fc0
Merge pull request #20783 from Yannic/proto_incompat
[bazel] Add fixes for --incompatible_load_proto_rules_from_bzl
2020-02-07 15:46:38 -08:00
Lidi Zheng 8701b18efb Use str instead of Text 2020-02-07 10:40:26 -08:00
Richard Belleville aadcded305 Add docstrings 2020-02-06 16:56:01 -08:00
Richard Belleville 1abe2f0ac2 Add stream_stream 2020-02-06 16:37:39 -08:00
Richard Belleville 38bef98463 Add stream-unary 2020-02-06 16:27:21 -08:00
Richard Belleville b5f06c216e Implement unary_stream 2020-02-06 16:10:25 -08:00
Richard Belleville 4ac50ceed6 Add maximum-based channel eviction 2020-02-06 15:59:01 -08:00
Lidi Zheng 5cf41f3424 Revert the changes in _channel.py 2020-02-06 15:31:30 -08:00