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)