Do I need to set assignTimestampsAndWatermarks if I set my time characteristic to IngestionTime?

Posted by kant kodali on
URL: http://deprecated-apache-flink-user-mailing-list-archive.369.s1.nabble.com/Do-I-need-to-set-assignTimestampsAndWatermarks-if-I-set-my-time-characteristic-to-IngestionTime-tp33525.html

Hi All,

Do I need to set assignTimestampsAndWatermarks if I set my time characteristic to IngestionTime?

say I set my time characteristic of stream execution environment to Ingestion time as follows

streamExecutionEnvironment.setStreamTimeCharacteristic(TimeCharacteristic.IngestionTime);

do I need to call datastream.assignTimestampsAndWatermarks(AscendingTimestampExtractor) ?

I thought datastream.assignTimestampsAndWatermarks is mandatory only if time characteristic is event time. No? Did this behavior change in Flink 1.10? because I see libraries not setting datastream.assignTimestampsAndWatermarks when time characteristic is Ingestion time but they do for event time. If not, I am wondering how can I set AscendingTimestampExtractor in a distributed environment? is there anyway to add monotonically increasing long(AscendingTimestampExtractor) without any distributed locks?

Thanks!