Uploaded image for project: 'Beam'
  1. Beam
  2. BEAM-6984 Python 3.7 Support
  3. BEAM-6986

TypeHints Py3 Error: Multiple tests fail with a generator StopIteration error on Python 3.7

    XMLWordPrintableJSON

    Details

    • Type: Sub-task
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.13.0
    • Component/s: sdk-py-core
    • Labels:
      None

      Description

      The following tests are failing:

      • test_top_of_runtime_checking_satisfied (apache_beam.transforms.ptransform_test.PTransformTypeCheckTestCase)
      • test_functions_as_regular_generator (apache_beam.typehints.typehints_test.TestGeneratorWrapper)

      With these errors:

       

      ======================================================================
      ERROR: test_top_of_runtime_checking_satisfied (apache_beam.transforms.ptransform_test.PTransformTypeCheckTestCase)
      ----------------------------------------------------------------------
      Traceback (most recent call last):
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/transforms/ptransform_test.py", line 1900, in test_top_of_runtime_checking_satisfied
          self.p.run()
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/testing/test_pipeline.py", line 107, in run
          else test_runner_api))
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/pipeline.py", line 419, in run
          return self.runner.run_pipeline(self, self._options)
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/direct/direct_runner.py", line 132, in run_pipeline
          return runner.run_pipeline(pipeline, options)
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/portability/fn_api_runner.py", line 276, in run_pipeline
          default_environment=self._default_environment))
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/portability/fn_api_runner.py", line 280, in run_via_runner_api
          return self.run_stages(*self.create_stages(pipeline_proto))
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/portability/fn_api_runner.py", line 356, in run_stages
          stage_context.safe_coders)
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/portability/fn_api_runner.py", line 511, in run_stage
          data_input, data_output)
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/portability/fn_api_runner.py", line 1217, in process_bundle
          result_future = self._controller.control_handler.push(process_bundle)
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/portability/fn_api_runner.py", line 832, in push
          response = self.worker.do_instruction(request)
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/worker/sdk_worker.py", line 312, in do_instruction
          request.instruction_id)
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/worker/sdk_worker.py", line 331, in process_bundle
          bundle_processor.process_bundle(instruction_id))
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/worker/bundle_processor.py", line 559, in process_bundle
          op.finish()
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/worker/operations.py", line 580, in finish
          self.dofn_runner.finish()
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/common.py", line 781, in finish
          self._invoke_bundle_method(self.do_fn_invoker.invoke_finish_bundle)
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/common.py", line 775, in _invoke_bundle_method
          self._reraise_augmented(exn)
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/common.py", line 800, in _reraise_augmented
          raise_with_traceback(new_exn)
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/target/.tox-py37/py37/lib/python3.7/site-packages/future/utils/__init__.py", line 419, in raise_with_traceback
          raise exc.with_traceback(traceback)
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/common.py", line 773, in _invoke_bundle_method
          bundle_method()
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/common.py", line 369, in invoke_finish_bundle
          self.signature.finish_bundle_method.method_value())
        File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/runners/common.py", line 895, in finish_bundle_outputs
          for result in results:
      RuntimeError: generator raised StopIteration [while running 'AciiTop/ParDo(_TopPerBundle)']
      ======================================================================
       ERROR: test_functions_as_regular_generator (apache_beam.typehints.typehints_test.TestGeneratorWrapper)
       ----------------------------------------------------------------------
       Traceback (most recent call last):
       File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/typehints/decorators.py", line 612, in _iter_
       x = next(self.internal_gen)
       StopIteration
      The above exception was the direct cause of the following exception:
      Traceback (most recent call last):
       File "/home/jenkins/jenkins-slave/workspace/beam_PreCommit_Python_Commit/src/sdks/python/test-suites/tox/py37/build/srcs/sdks/python/apache_beam/typehints/typehints_test.py", line 725, in test_functions_as_regular_generator
       self.assertEqual((1, 2, 3), tuple(wrapped_gen))
       RuntimeError: generator raised StopIteration
      

       

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                nikenano niklas Hansson
                Reporter:
                RobbeSneyders Robbe
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 3h 10m
                  3h 10m