From a324bcaad02117657f9027b14f9708f396ab9170 Mon Sep 17 00:00:00 2001
From: Eric Gribkoff <ericgribkoff@google.com>
Date: Thu, 6 Dec 2018 13:53:16 -0800
Subject: [PATCH] Pre-fix python3 pylint failures

---
 src/python/grpcio/grpc/_channel.py                    | 1 +
 src/python/grpcio/grpc/_interceptor.py                | 5 ++++-
 src/python/grpcio_tests/tests/qps/worker_server.py    | 4 ++--
 src/python/grpcio_tests/tests/unit/_exit_scenarios.py | 2 +-
 4 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/python/grpcio/grpc/_channel.py b/src/python/grpcio/grpc/_channel.py
index ab154d85121..35fa82d56bd 100644
--- a/src/python/grpcio/grpc/_channel.py
+++ b/src/python/grpcio/grpc/_channel.py
@@ -175,6 +175,7 @@ def _event_handler(state, response_deserializer):
     return handle_event
 
 
+#pylint: disable=too-many-statements
 def _consume_request_iterator(request_iterator, state, call, request_serializer,
                               event_handler):
     if cygrpc.is_fork_support_enabled():
diff --git a/src/python/grpcio/grpc/_interceptor.py b/src/python/grpcio/grpc/_interceptor.py
index 2a8ddd8ce42..fc0ad77eb9e 100644
--- a/src/python/grpcio/grpc/_interceptor.py
+++ b/src/python/grpcio/grpc/_interceptor.py
@@ -135,9 +135,12 @@ class _FailureOutcome(grpc.RpcError, grpc.Future, grpc.Call):
     def __iter__(self):
         return self
 
-    def next(self):
+    def __next__(self):
         raise self._exception
 
+    def next(self):
+        return self.__next__()
+
 
 class _UnaryOutcome(grpc.Call, grpc.Future):
 
diff --git a/src/python/grpcio_tests/tests/qps/worker_server.py b/src/python/grpcio_tests/tests/qps/worker_server.py
index 740bdcf1eb3..337a94b546c 100644
--- a/src/python/grpcio_tests/tests/qps/worker_server.py
+++ b/src/python/grpcio_tests/tests/qps/worker_server.py
@@ -39,7 +39,7 @@ class WorkerServer(worker_service_pb2_grpc.WorkerServiceServicer):
         self._quit_event = threading.Event()
 
     def RunServer(self, request_iterator, context):
-        config = next(request_iterator).setup
+        config = next(request_iterator).setup  #pylint: disable=stop-iteration-return
         server, port = self._create_server(config)
         cores = multiprocessing.cpu_count()
         server.start()
@@ -102,7 +102,7 @@ class WorkerServer(worker_service_pb2_grpc.WorkerServiceServicer):
         return (server, port)
 
     def RunClient(self, request_iterator, context):
-        config = next(request_iterator).setup
+        config = next(request_iterator).setup  #pylint: disable=stop-iteration-return
         client_runners = []
         qps_data = histogram.Histogram(config.histogram_params.resolution,
                                        config.histogram_params.max_possible)
diff --git a/src/python/grpcio_tests/tests/unit/_exit_scenarios.py b/src/python/grpcio_tests/tests/unit/_exit_scenarios.py
index f489db12cb3..d1263c2c56c 100644
--- a/src/python/grpcio_tests/tests/unit/_exit_scenarios.py
+++ b/src/python/grpcio_tests/tests/unit/_exit_scenarios.py
@@ -87,7 +87,7 @@ def hang_stream_stream(request_iterator, servicer_context):
 
 def hang_partial_stream_stream(request_iterator, servicer_context):
     for _ in range(test_constants.STREAM_LENGTH // 2):
-        yield next(request_iterator)
+        yield next(request_iterator)  #pylint: disable=stop-iteration-return
     time.sleep(WAIT_TIME)