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

ASF GitHub Bot commented on FLINK-8360:
---------------------------------------

Github user StefanRRichter commented on a diff in the pull request:

    https://github.com/apache/flink/pull/5239#discussion_r162584893
  
    --- Diff: 
flink-streaming-java/src/test/java/org/apache/flink/streaming/api/operators/StreamOperatorSnapshotRestoreTest.java
 ---
    @@ -98,7 +101,26 @@ public Integer getKey(Integer value) throws Exception {
                                TypeInformation.of(Integer.class),
                                MAX_PARALLELISM,
                                1 /* num subtasks */,
    -                           0 /* subtask index */);
    +                           0 /* subtask index */) {
    +
    +                   @Override
    +                   protected StreamTaskStateManager 
createStreamTaskStateManager(
    +                           Environment env,
    +                           StateBackend stateBackend,
    +                           ProcessingTimeService processingTimeService) {
    +
    +                           return new StreamTaskStateManagerImpl(env, 
stateBackend, processingTimeService) {
    +                                   @Override
    +                                   protected <K> 
InternalTimeServiceManager<?, K> internalTimeServiceManager(
    +                                           AbstractKeyedStateBackend<K> 
keyedStatedBackend,
    +                                           KeyContext keyContext,
    +                                           
Iterable<KeyGroupStatePartitionStreamProvider> rawKeyedStates) throws Exception 
{
    +
    +                                           return null;
    --- End diff --
    
    Yes, this is a workaround, because this is a dedicated test for raw keyed 
states - which is otherwise consumed immediately to restore a timer service. 
This will fail because we wrote only test data to the stream, not the data for 
a timer service.


> Implement task-local state recovery
> -----------------------------------
>
>                 Key: FLINK-8360
>                 URL: https://issues.apache.org/jira/browse/FLINK-8360
>             Project: Flink
>          Issue Type: New Feature
>          Components: State Backends, Checkpointing
>            Reporter: Stefan Richter
>            Assignee: Stefan Richter
>            Priority: Major
>             Fix For: 1.5.0
>
>
> This issue tracks the development of recovery from task-local state. The main 
> idea is to have a secondary, local copy of the checkpointed state, while 
> there is still a primary copy in DFS that we report to the checkpoint 
> coordinator.
> Recovery can attempt to restore from the secondary local copy, if available, 
> to save network bandwidth. This requires that the assignment from tasks to 
> slots is as sticky is possible.
> For starters, we will implement this feature for all managed keyed states and 
> can easily enhance it to all other state types (e.g. operator state) later.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to