Hi Dom, If you are converting a DataStream to a Table with a rowtime attribute, then the DataStream should hold event-time timestamp. For example, call `assignTimestampsAndWatermarks` before converting to table. You can find more details in the doc [1].
Best, Jark [1]: https://ci.apache.org/projects/flink/flink-docs-master/dev/table/streaming/time_attributes.html#during-datastream-to-table-conversion-1 On Thu, 19 Mar 2020 at 02:38, Dominik Wosiński <wos...@gmail.com> wrote: > Hey, > I just wanted to ask about one thing about timestamps. So, currently If I > have a KeyedBroadcastProcess function followed by Temporal Table Join, it > works like a charm. But, say I want to delay emitting some of the results > due to any reason. So If I *registerProcessingTimeTimer* and any > elements are emitted in *onTimer* call then the timestamps are erased, > meaning that I will simply get : > *Caused by: java.lang.RuntimeException: Rowtime timestamp is null. Please > make sure that a proper TimestampAssigner is defined and the stream > environment uses the EventTime time characteristic.* > * at DataStreamSourceConversion$10.processElement(Unknown Source)* > * at > org.apache.flink.table.runtime.CRowOutputProcessRunner.processElement(CRowOutputProcessRunner.scala:70)* > * at > org.apache.flink.streaming.api.operators.ProcessOperator.processElement(ProcessOperator.java:66)* > * at > org.apache.flink.streaming.runtime.tasks.OperatorChain$CopyingChainingOutput.pushToOperator(OperatorChain.java:579)* > * ... 23 more* > > Is that the expected behavior? I haven't seen it described anywhere before > and I wasn't able to find any docs specifying this. > > Thanks in advance, > Best Regards, > Dom. >