GitHub user jkff opened a pull request:
https://github.com/apache/beam/pull/1824
Splittable DoFn: Gives the runner access to RestrictionTracker
Changes the SplittableParDo transform so that ProcessFn uses a
runner-supplied hook to run the @ProcessElement method, giving
it, among other things, the RestrictionTracker, so the runner
can initiate checkpointing/splitting with it at will.
Introduces a default implementation of said hook, which limits
the number of outputs and duration of the call. This implementation
is used in tests and in Direct runner. Dataflow Streaming runner
will also use this implementation, while Dataflow Batch runner
will be more sophisticated.
R: @kennknowles
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/jkff/incubator-beam runner-hooks
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/beam/pull/1824.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #1824
----
commit fe8be1a66cef83e92ed0358682eb150ea04455fe
Author: Eugene Kirpichov <[email protected]>
Date: 2016-11-18T19:21:19Z
Gives the runner access to RestrictionTracker
Changes the SplittableParDo transform so that ProcessFn uses a
runner-supplied hook to run the @ProcessElement method, giving
it, among other things, the RestrictionTracker, so the runner
can initiate checkpointing/splitting with it at will.
Introduces a default implementation of said hook, which limits
the number of outputs and duration of the call. This implementation
is used in tests and in Direct runner. Dataflow Streaming runner
will also use this implementation, while Dataflow Batch runner
will be more sophisticated.
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---