[
https://issues.apache.org/jira/browse/FLINK-9107?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Timo Walther resolved FLINK-9107.
---------------------------------
Resolution: Fixed
Fix Version/s: (was: 1.3.4)
Fixed in 1.6.0: 7b0fc58f75494c9a2c71d551632445ded85c0a45
Fixed in 1.5.0: f083622a200c79395ecf16e2be6f8b540fe85178
Fixed in 1.4.3: ca8f4ca4fdf4fbd98a86b32a2a77dbb00742e164
> Document timer coalescing for ProcessFunctions
> ----------------------------------------------
>
> Key: FLINK-9107
> URL: https://issues.apache.org/jira/browse/FLINK-9107
> Project: Flink
> Issue Type: Improvement
> Components: Documentation, Streaming
> Affects Versions: 1.3.0, 1.4.0, 1.5.0, 1.6.0
> Reporter: Nico Kruber
> Assignee: Nico Kruber
> Priority: Major
> Fix For: 1.5.0, 1.4.3
>
>
> In a {{ProcessFunction}}, registering timers for each event via
> {{ctx.timerService().registerEventTimeTimer()}} using times like
> {{ctx.timestamp() + timeout}} will get a millisecond accuracy and may thus
> create one timer per millisecond which may lead to some overhead in the
> {{TimerService}}.
> This problem can be mitigated by using timer coalescing if the desired
> accuracy of the timer can be larger than 1ms. A timer firing at full seconds
> only, for example, can be realised like this:
> {code}
> coalescedTime = ((ctx.timestamp() + timeout) / 1000) * 1000;
> ctx.timerService().registerEventTimeTimer(coalescedTime);
> {code}
> As a result, only a single timer may exist for every second since we do not
> add timers for timestamps that are already there.
> This should be documented in the {{ProcessFunction}} docs.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)