From c9a3aaaa541f6915c0ea886acc1026eba27da881 Mon Sep 17 00:00:00 2001 From: Ken Payson Date: Tue, 28 Mar 2017 15:50:25 -0700 Subject: Fix Python poll() server spinlock bug --- src/python/grpcio/grpc/_server.py | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src') 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): -- cgit v1.2.3