aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar kpayson64 <kpayson@google.com>2017-03-28 17:34:14 -0700
committerGravatar GitHub <noreply@github.com>2017-03-28 17:34:14 -0700
commite41773968250aa299aa81cbbe655741044b66884 (patch)
tree946db83101773c44961455735ca56385980035bb /src
parentd93e4d3d1c4b001a7c0a502ff91fbd8c703b2ede (diff)
parentc9a3aaaa541f6915c0ea886acc1026eba27da881 (diff)
Merge pull request #10345 from kpayson64/real_spinlock_fix
Fix Python poll() server spinlock bug
Diffstat (limited to 'src')
-rw-r--r--src/python/grpcio/grpc/_server.py4
1 files changed, 4 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):