Stefan Richter created FLINK-9487:
-------------------------------------
Summary: Prepare InternalTimerHeap for asynchronous snapshots
Key: FLINK-9487
URL:
https://issues.apache.org/jira/browse/FLINK-9487 Project: Flink
Issue Type: Sub-task
Components: State Backends, Checkpointing, Streaming
Reporter: Stefan Richter
Assignee: Stefan Richter
Fix For: 1.6.0
When we want to snapshot timers with the keyed backend state, this must happen as part of an asynchronous snapshot.
The data structure {{InternalTimerHeap}} needs to offer support for this through a lightweight copy mechanism (e.g. arraycopy of the timer queue, because timers are immutable w.r.t. serialization).
We can also stop keeping the dedup maps in {{InternalTimerHeap}} separated by key-group, all timers can go into one map.
Instead, we can implement online-partitioning as part of the asynchronous operation, similar to what we do in {{CopyOnWriteStateTable}} snapshots. Notice that in this intermediate state, the code will still run in the synchronous part until we are integrated with the backends for async snapshotting (next subtask of this jira).
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)