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.
>

Reply via email to