diff options
author | 2018-01-12 17:09:43 -0800 | |
---|---|---|
committer | 2018-01-12 17:09:43 -0800 | |
commit | e1e562eb171c81fad24176e898cc4e722bee227b (patch) | |
tree | c3eb43c96b729a24a4a86507b4470b43e26a82f3 /src/python/grpcio | |
parent | 06fbe438a20eb09c456c4ec7fc0000a5a07967ba (diff) | |
parent | 145b199c4ddcd5e7b985585f3e733ae5092adbbb (diff) |
Merge pull request #13965 from evanj/python-abort-fix
python: Context.abort should fail RPC even for StatusCode.OK
Diffstat (limited to 'src/python/grpcio')
-rw-r--r-- | src/python/grpcio/grpc/_server.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/python/grpcio/grpc/_server.py b/src/python/grpcio/grpc/_server.py index 9402941bab..56122fee11 100644 --- a/src/python/grpcio/grpc/_server.py +++ b/src/python/grpcio/grpc/_server.py @@ -277,6 +277,12 @@ class _Context(grpc.ServicerContext): self._state.trailing_metadata = trailing_metadata def abort(self, code, details): + # treat OK like other invalid arguments: fail the RPC + if code == grpc.StatusCode.OK: + logging.error( + 'abort() called with StatusCode.OK; returning UNKNOWN') + code = grpc.StatusCode.UNKNOWN + details = '' with self._state.condition: self._state.code = code self._state.details = _common.encode(details) |