ljz2051 commented on code in PR #24640:
URL: https://github.com/apache/flink/pull/24640#discussion_r1584375937


##########
flink-runtime/src/main/java/org/apache/flink/runtime/checkpoint/filemerging/FileMergingSnapshotManagerBase.java:
##########
@@ -575,8 +576,51 @@ private void createManagedDirectory(Path managedPath) {
     @Override
     public void close() throws IOException {}
 
+    // ------------------------------------------------------------------------
+    //  restore
+    // ------------------------------------------------------------------------
+
+    @Override
+    public void restoreStateHandles(
+            long checkpointId, SubtaskKey subtaskKey, 
Stream<SegmentFileStateHandle> stateHandles) {
+
+        Set<LogicalFile> uploadedLogicalFiles;
+        synchronized (lock) {
+            uploadedLogicalFiles =
+                    uploadedStates.computeIfAbsent(checkpointId, id -> new 
HashSet<>());
+        }
+
+        stateHandles.forEach(
+                fileHandle -> {
+                    PhysicalFile physicalFile =
+                            new PhysicalFile(
+                                    null,
+                                    fileHandle.getFilePath(),
+                                    physicalFileDeleter,

Review Comment:
   @fredia  In the case of the job restore (not failover and not rescaling),  
the jobID may be changed, and I think the JM should claim ownership of these 
files to delete them.  In this case, however, the parallelism of the job has 
not changed, so the `keyGroupRange` of the `KeyedStateHandle` cannot be used as 
judgment conditions.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to