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 infrastruct...@apache.org or file a JIRA ticket with INFRA. ---