[jira] [Created] (FLINK-22611) add documentation about the semantics of event time for time window output

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Created] (FLINK-22611) add documentation about the semantics of event time for time window output

Shang Yuanchun (Jira)
Zhenhao Li created FLINK-22611:
----------------------------------

             Summary: add documentation about the semantics of event time for time window output
                 Key: FLINK-22611
                 URL: https://issues.apache.org/jira/browse/FLINK-22611
             Project: Flink
          Issue Type: Improvement
            Reporter: Zhenhao Li


It seems that all windowed aggregation output receives the timestamp metadata if event time is being used for the processing.
However, I couldn't find anything on the documentation pages about what timestamp value each output gets. Intuitively, it makes sense to assume it is the maximal timestamp from the input records of the window.

After digging in the source code, I got the impression that the timestamp of the output is actually 1 millisecond before the window end time.
See
https://github.com/apache/flink/blob/99c2a415e9eeefafacf70762b6f54070f7911ceb/flink-streaming-java/src/main/java/org/apache/flink/streaming/runtime/operators/windowing/EvictingWindowOperator.java#L375
and
https://github.com/apache/flink/blob/99c2a415e9eeefafacf70762b6f54070f7911ceb/flink-streaming-java/src/main/java/org/apache/flink/streaming/api/windowing/windows/TimeWindow.java#L84

Correct me if I'm wrong. If I'm right, I think we should add documentation about it since this is very important because it is not uncommon to chain multiple windowed processes. Understanding the timestamp semantics is critical to the correctness of the code.






--
This message was sent by Atlassian Jira
(v8.3.4#803005)