Github user chenqin commented on the issue:
https://github.com/apache/flink/pull/2982
@aljoscha Thanks for your time. We can chat more after 1.2 release!
I think it makes sense to extends Collector, even though we may not remove
collect(T obj) due to API compability issue in 1.X. Per @fhueske comments in
[FLIP-13 email
thread](http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/Discuss-FLIP-13-Side-Outputs-in-Flink-td14204.html)
Only point I would like to add: there seems decent amount of refactor to
replace underlining output chains using collect(tag, element), yet seems
reasonable investment moving forward (multiple inputs/ multiple outputs)
`tooLateEvents()` method is something added for user's convenience. should
be fine to remove if doesn't gain much benefit. `LateArrivingTag` share same
type as input (which is like already fixed once input type defined). Add late
arriving tag within apply method seems redudant. In fact, without any changes
to this diff, user also be able to access late arriving events via following
way.
`
OutputTag<T> lateElementsOutput = new LateArrivingOutputTag<T>();
DataStream<T> input = ...
SingleOutputStreamOperator<O> windowed = input
.keyBy(...)
.window(...)
.apply(Function);
DataStream<T> lateElements = windowed.getSideOutput(lateElementsOutput);
`
Thanks,
Chen
---
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.
---