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

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

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

    https://github.com/apache/flink/pull/5239#discussion_r165342545
  
    --- Diff: 
flink-runtime/src/test/java/org/apache/flink/runtime/state/TaskStateManagerImplTest.java
 ---
    @@ -97,6 +104,39 @@ public void testStateReportingAndRetrieving() {
                
Assert.assertNull(taskStateManager.operatorStates(operatorID_3));
        }
     
    +   /**
    +    * This tests if the {@link TaskStateManager} properly returns the the 
subtask local state dir from the
    +    * corresponding {@link TaskLocalStateStore}.
    +    */
    +   @Test
    +   public void testForwardingSubtaskLocalStateBaseDirFromLocalStateStore() 
throws IOException {
    +           JobID jobID = new JobID(42L, 43L);
    +           JobVertexID jobVertexID = new JobVertexID(12L, 34L);
    +           ExecutionAttemptID executionAttemptID = new 
ExecutionAttemptID(23L, 24L);
    +           TestCheckpointResponder checkpointResponderMock = new 
TestCheckpointResponder();
    +
    +           TemporaryFolder tmpFolder = new TemporaryFolder();
    +
    +           try {
    +                   tmpFolder.create();
    +                   TaskLocalStateStore taskLocalStateStore =
    +                           new TaskLocalStateStore(jobID, jobVertexID, 13, 
tmpFolder.newFolder());
    +
    +                   TaskStateManager taskStateManager = taskStateManager(
    +                           jobID,
    +                           executionAttemptID,
    +                           checkpointResponderMock,
    +                           null,
    +                           taskLocalStateStore);
    +
    +                   Assert.assertEquals(
    +                           
taskLocalStateStore.getSubtaskLocalStateBaseDirectory(),
    +                           
taskStateManager.getSubtaskLocalStateBaseDirectory());
    --- End diff --
    
    Why does the `TaskStateManager` knows about the subtask local state base 
directory?


> 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