[ https://issues.apache.org/jira/browse/FLINK-3714?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15327347#comment-15327347 ]
ASF GitHub Bot commented on FLINK-3714: --------------------------------------- Github user aljoscha commented on a diff in the pull request: https://github.com/apache/flink/pull/2093#discussion_r66789581 --- Diff: flink-streaming-java/src/main/java/org/apache/flink/streaming/api/datastream/WindowedStream.java --- @@ -121,6 +124,23 @@ public WindowedStream(KeyedStream<T, K> input, } /** + * Sets the allowed lateness. If the {@link WindowAssigner} used + * is in processing time, then the allowed lateness is set to 0. + */ + @PublicEvolving + public WindowedStream<T, K, W> setAllowedLateness(Time lateness) { + long millis = lateness.toMilliseconds(); + if (allowedLateness < 0) { + throw new IllegalArgumentException("The allowed lateness cannot be negative."); + } else if (allowedLateness != 0 && !windowAssigner.isEventTime()) { + this.allowedLateness = 0; --- End diff -- Yeah, but it would throw right when specifying the job. Not when running or anything. LOG is also fine, though. 😃 > Add Support for "Allowed Lateness" > ---------------------------------- > > Key: FLINK-3714 > URL: https://issues.apache.org/jira/browse/FLINK-3714 > Project: Flink > Issue Type: Sub-task > Components: Streaming > Reporter: Aljoscha Krettek > Assignee: Kostas Kloudas > > As mentioned in > https://docs.google.com/document/d/1Xp-YBf87vLTduYSivgqWVEMjYUmkA-hyb4muX3KRl08/edit# > we should add support for an allowed lateness setting. > This includes several things: > - API for setting allowed lateness > - Dropping of late elements > - Garbage collection of windows state/timers > Depending on whether the {{WindowAssigner}} assigns windows based on event > time or processing time we have to adjust the GC behavior. For event-time > windows "allowed lateness" makes sense and we should garbage collect after > this expires. For processing-time windows "allowed lateness" does not make > sense and we should always GC window state/timers at the end timestamp of a > processing-time window. I think that we need a method for this on > {{WindowAssigner}} that allows to differentiate between event-time windows > and processing-time windows: {{boolean WindowAssigner.isEventTime()}}. -- This message was sent by Atlassian JIRA (v6.3.4#6332)