Details
-
Improvement
-
Status: Resolved
-
Blocker
-
Resolution: Fixed
-
0.10.2
-
None
Description
Currently, "EventTime" and "IngestionTime" are completely the same.
For both happens the following:
- Sources generate ingestion time timestamps and watermarks
- If a user adds a manual timestamp extractor / watermark generator, then those override the ingestion time timestamps and watermarks
- That implies that event time on a certain input falls back to ingestion time, if one forgets (or incorrectly uses) the timestamp extractors
- Also, Ingestion Time and Event Time simply mix if some inputs have timestamp assigners, and others have not.
This behavior is quite tricky to understand. After some discussions with aljoscha and rmetzger, we suggest to change it the following way.
1. On Ingestion Time, the timestamps and watermarks are generated as they are now.
2. On event time, no default timestamps and watermarks are generated. If a user does not implement a timestamp extractor / watermark generator, then the event time operations will fail fast.
3. If one wants to use ingestion time on event time settings (mix), one can use an explicit "WallClockTimetampsAndWatermark" generator.
4. Later, the "Ingestion Time" settings should automatically disable and user-defined timestamp extractors / assigners.