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-unsubscr...@beam.apache.org

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


Reply via email to