[ 
https://issues.apache.org/jira/browse/FLINK-7388?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16190718#comment-16190718
 ] 

Xingcan Cui commented on FLINK-7388:
------------------------------------

Hi [~phoenixjiangnan], I think this ticket is for the 
{{collector.setAbsoluteTimestamp(timer.getTimestamp())}} in 
{{Keyed(Co)ProcessOperator.onProcessingTime()}}. It sets the uncertain 
processing time as the timestamp (which is supposed to be the event time) for a 
{{StreamRecord}} and that may cause the downstream operators mistakenly 
thinking that the event time is provided.

We don't know if there are some existing applications relying on this 
"erroneous" mechanism. Simply removing that line will cause them to fail.

> ProcessFunction.onTimer() sets processing time as timestamp
> -----------------------------------------------------------
>
>                 Key: FLINK-7388
>                 URL: https://issues.apache.org/jira/browse/FLINK-7388
>             Project: Flink
>          Issue Type: Improvement
>          Components: DataStream API
>    Affects Versions: 1.4.0, 1.3.2
>            Reporter: Fabian Hueske
>            Assignee: Bowen Li
>
> The {{ProcessFunction.onTimer()}} method sets the current processing time as 
> event-time timestamp when it is called from a processing time timer.
> I don't think this behavior is useful. Processing time timestamps won't be 
> aligned with watermarks and are not deterministic. The only reason would be 
> to have _some_ value in the timestamp field. However, the behavior is very 
> subtle and might not be noticed by users.
> IMO, it would be better to erase the timestamp. This will cause downstream 
> operator that rely on timestamps to fail and notify the users that the logic 
> they implemented was probably not what they intended to do.
> What do you think [~aljoscha]?



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to