lukecwik commented on a change in pull request #13006:
URL: https://github.com/apache/beam/pull/13006#discussion_r499802508
##########
File path:
runners/core-construction-java/src/main/java/org/apache/beam/runners/core/construction/SplittableParDo.java
##########
@@ -638,43 +644,161 @@ public void tearDown() {
}
/**
- * Throws an {@link IllegalArgumentException} if the pipeline contains any
primitive read
- * transforms that have not been expanded to be executed as {@link DoFn
splittable DoFns} as long
- * as the experiment {@code use_deprecated_read} is not specified.
+ * Converts {@link Read} based Splittable DoFn expansions to primitive reads
implemented by {@link
+ * PrimitiveBoundedRead} and {@link PrimitiveUnboundedRead} if either the
experiment {@code
+ * use_deprecated_read} or {@code beam_fn_api_use_deprecated_read} are
specified.
+ *
+ * <p>TODO(BEAM-10670): Remove the primitive Read and make the splittable
DoFn the only option.
+ */
+ public static void
convertReadBasedSplittableDoFnsToPrimitiveReadsIfNecessary(Pipeline pipeline) {
Review comment:
I can do that but it seems like it will lead to possible inconsistency
across runners around how this choice is made. Currently CHANGES.md says to get
the old behavior use this flag and it would be unfortunate to say "consult the
runner documentation as to how to get the old behavior". Also the intent is for
the old behavior to be removed in a few releases so that we don't have to
support it anymore.
----------------------------------------------------------------
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:
[email protected]