aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar Nathaniel Manista <nathaniel@google.com>2015-08-29 19:18:22 +0000
committerGravatar Nathaniel Manista <nathaniel@google.com>2015-08-29 19:18:22 +0000
commit1d14618a0e3a86a705d543a8c761aa60bd1a59c0 (patch)
treeeba2ffe5b49915006607197c733c7ae728e4abb1 /src
parent68e63c7fc7f9cef30053e56de149b43685451199 (diff)
Fix grace period bug in _end.accept_ticket
Tickets should not be ignored if the end is in a grace period; rather they should be ignored if they are for an unrecognized (likely new) operation and the end is in a grace period.
Diffstat (limited to 'src')
-rw-r--r--src/python/grpcio/grpc/framework/core/_end.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/python/grpcio/grpc/framework/core/_end.py b/src/python/grpcio/grpc/framework/core/_end.py
index 5ef2f6d3a3..f57cde4e58 100644
--- a/src/python/grpcio/grpc/framework/core/_end.py
+++ b/src/python/grpcio/grpc/framework/core/_end.py
@@ -203,11 +203,11 @@ class _End(End):
def accept_ticket(self, ticket):
"""See links.Link.accept_ticket for specification."""
with self._lock:
- if self._cycle is not None and not self._cycle.grace:
+ if self._cycle is not None:
operation = self._cycle.operations.get(ticket.operation_id)
if operation is not None:
operation.handle_ticket(ticket)
- elif self._servicer_package is not None:
+ elif self._servicer_package is not None and not self._cycle.grace:
termination_action = _termination_action(
self._lock, self._stats, ticket.operation_id, self._cycle)
operation = _operation.service_operate(