aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/python
diff options
context:
space:
mode:
authorGravatar Craig Tiller <ctiller@google.com>2017-04-12 06:44:00 -0700
committerGravatar Craig Tiller <ctiller@google.com>2017-04-12 06:44:00 -0700
commitc20fa90c6094599540e3a7ef16a5aa381580be33 (patch)
tree10233657606d5207a83bcebb36b8676dad459655 /src/python
parentd4e9a4863a25f40389db01347aaabcb798dc9138 (diff)
parentf200f25d4dad5b74e7216a2b17fa2c2783ceb40e (diff)
Merge github.com:grpc/grpc into cpparena
Diffstat (limited to 'src/python')
-rw-r--r--src/python/grpcio/grpc/_server.py4
-rw-r--r--src/python/grpcio/grpc_core_dependencies.py1
2 files changed, 5 insertions, 0 deletions
diff --git a/src/python/grpcio/grpc/_server.py b/src/python/grpcio/grpc/_server.py
index 47838c2c98..f29c44a4cf 100644
--- a/src/python/grpcio/grpc/_server.py
+++ b/src/python/grpcio/grpc/_server.py
@@ -705,6 +705,10 @@ def _serve(state):
state.rpc_states.remove(rpc_state)
if _stop_serving(state):
return
+ # We want to force the deletion of the previous event
+ # ~before~ we poll again; if the event has a reference
+ # to a shutdown Call object, this can induce spinlock.
+ event = None
def _stop(state, grace):
diff --git a/src/python/grpcio/grpc_core_dependencies.py b/src/python/grpcio/grpc_core_dependencies.py
index 3bcbe667e2..0d0a5fb088 100644
--- a/src/python/grpcio/grpc_core_dependencies.py
+++ b/src/python/grpcio/grpc_core_dependencies.py
@@ -113,6 +113,7 @@ CORE_SOURCE_FILES = [
'src/core/lib/iomgr/iomgr_uv.c',
'src/core/lib/iomgr/iomgr_windows.c',
'src/core/lib/iomgr/load_file.c',
+ 'src/core/lib/iomgr/lockfree_event.c',
'src/core/lib/iomgr/network_status_tracker.c',
'src/core/lib/iomgr/polling_entity.c',
'src/core/lib/iomgr/pollset_set_uv.c',