You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@beam.apache.org by GitBox <gi...@apache.org> on 2021/10/01 00:45:26 UTC

[GitHub] [beam] lukecwik commented on a change in pull request #15634: Minor: Fix `Iterable[SplitResultResidual]` type errors

lukecwik commented on a change in pull request #15634:
URL: https://github.com/apache/beam/pull/15634#discussion_r719864996



##########
File path: sdks/python/apache_beam/runners/worker/operations.py
##########
@@ -710,13 +710,12 @@ def start(self):
   def process(self, o):
     # type: (WindowedValue) -> None
     with self.scoped_process_state:
-      delayed_application = self.dofn_runner.process(o)
-      if delayed_application:
+      delayed_applications = self.dofn_runner.process(o)
+      if delayed_applications:
         assert self.execution_context is not None
-        # TODO(BEAM-77746): there's disagreement between subclasses
-        #  of DoFnRunner over the return type annotations of process().
-        self.execution_context.delayed_applications.append(
-            (self, delayed_application))  # type: ignore[arg-type]
+        for delayed_application in delayed_applications:

Review comment:
       I would have expected something that is being returned here would break splitting since we would be returning appending a `Tuple[operations.DoOperation, Iterable[common.SplitResultResidual]]` instead of `Tuple[operations.DoOperation, common.SplitResultResidual]`. Maybe we are unpacking the iterable somewhere inexplicably.
   
   We have several SDF based validates runner tests, would be worthwhile to see what they say for Dataflow.




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@beam.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org