GitHub user aljoscha opened a pull request: https://github.com/apache/flink/pull/3484
[FLINK-4460] Side Outputs in Flink This is a refinement of #2982 by @chenqin. I changed the API a bit, added support for side outputs to `ProcessFunction`, enabled side outputs to work with chaining, added proper Scala API and a Scala API test and added documentation. R: @uce @kl0u and @chenqin for review, please You can merge this pull request into a Git repository by running: $ git pull https://github.com/aljoscha/flink finish-pr-2982-side-outputs-cp Alternatively you can review and apply these changes as the patch at: https://github.com/apache/flink/pull/3484.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 #3484 ---- commit 1746c7e5981942dfb0e57954f8241a400b699120 Author: Chen Qin <qinnc...@gmail.com> Date: 2016-10-21T19:38:04Z [FLINK-4460] Add support for side outputs This does not yet allow users to emit to side outputs in user functions. Only operators (StreamOperator) can emit to side outputs. A side output can be retrieved on a SingleOutputStreamOperator. commit 362fcb38abf525e704e97505186923ae77dc167b Author: Aljoscha Krettek <aljoscha.kret...@gmail.com> Date: 2016-10-21T19:38:04Z [FLINK-4460] Add side outputs for ProcessFunction commit 3ff4f8284691e9cbfba6f4c23b4e7fe1c584df50 Author: Aljoscha Krettek <aljoscha.kret...@gmail.com> Date: 2017-02-16T13:09:26Z [FLINK-4460] Make chaining work with side outputs commit 5a48cdfb67a1008bf4c7cba8ff76b2982db55a40 Author: Aljoscha Krettek <aljoscha.kret...@gmail.com> Date: 2017-02-16T13:41:10Z [FLINK-4460] Expose OutputTag constructor that takes TypeInformation commit 935ff90dadad380db293265cc49d072d764cf510 Author: Chen Qin <qinnc...@gmail.com> Date: 2017-03-01T14:36:17Z [FLINK-4460] Provide late-data output for window operations We use side outputs to emit dropped late data. commit 3ae8a673c6c29fe2e110f5745ddf72deae71aafd Author: Aljoscha Krettek <aljoscha.kret...@gmail.com> Date: 2017-03-07T10:06:31Z [FLINK-4460] Add proper side output API for Scala API The Scala side output API uses context bounds to get a TypeInformation for an OutputTag. This also adds a SideOutputITCase for the Scala API. commit 66182b79931016a04286279f5aba63af30442b02 Author: Aljoscha Krettek <aljoscha.kret...@gmail.com> Date: 2017-03-07T11:06:01Z [FLINK-4460] Add documentation for side outputs ---- --- 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 infrastruct...@apache.org or file a JIRA ticket with INFRA. ---