Hello,

I think I see a bug in a few places related to determining whether an input
is to be considered late.  Some components use the logic that (timestamp <=
watermark) is considered late.  Others use (timestamp < watermark).  I
think the former is correct according to the definition in Watermark.java.

Compare:
https://github.com/apache/flink/blob/df7452d9811b0aa88919d7e3c1f6c34b36ac9b38/flink-streaming-java/src/main/java/org/apache/flink/streaming/runtime/operators/windowing/WindowOperator.java#L574

https://github.com/apache/flink/blob/df7452d9811b0aa88919d7e3c1f6c34b36ac9b38/flink-libraries/flink-table/src/main/scala/org/apache/flink/table/runtime/aggregate/RowTimeUnboundedOver.scala#L116

https://github.com/apache/flink/blob/df7452d9811b0aa88919d7e3c1f6c34b36ac9b38/flink-libraries/flink-cep/src/main/java/org/apache/flink/cep/operator/AbstractKeyedCEPPatternOperator.java#L168

I might be misunderstanding the above snippets, it was a cursory look.

-Eron

Reply via email to