boyuanzz commented on a change in pull request #12016:
URL: https://github.com/apache/beam/pull/12016#discussion_r449735426



##########
File path: sdks/python/apache_beam/runners/worker/bundle_processor.py
##########
@@ -1079,6 +1079,13 @@ def construct_bundle_application(self,
                                   ):
     # type: (...) -> beam_fn_api_pb2.BundleApplication
     transform_id, main_input_tag, main_input_coder, outputs = op.input_info
+    # The main_input_coder should be the main_input_coder of
+    # SdfTruncateSizedRestrictions if SdfProcessSizedElements is following
+    # SdfTruncateSizedRestrictions.
+    if (isinstance(op, operations.SdfProcessSizedElements) and

Review comment:
       The problem here is the restriction coder. At least for `FnApiRunner`, 
when a `PCollection` crosses the wire, it seems like any non-standard coder 
will be length-prefixed. Here, the input coder of `SdfTruncateSizedRestrictions 
` is length-prefixed, but `SdfProcessSizedElements ` is not. On the 
`FnApiRunner` side, it decodes the element-restriction pair with the 
length-prefixed coder.  




----------------------------------------------------------------
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.

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


Reply via email to