You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by za...@apache.org on 2025/02/12 09:10:32 UTC

(flink) branch release-2.0 updated: [FLINK-37021][state/forst] Support reusing files in LEGACY recovery mode. (#26147)

This is an automated email from the ASF dual-hosted git repository.

zakelly pushed a commit to branch release-2.0
in repository https://gitbox.apache.org/repos/asf/flink.git


The following commit(s) were added to refs/heads/release-2.0 by this push:
     new 34a83a57bea [FLINK-37021][state/forst] Support reusing files in LEGACY recovery mode. (#26147)
34a83a57bea is described below

commit 34a83a57bea6cd450d97513d80325d8e361387d9
Author: AlexYinHan <al...@gmail.com>
AuthorDate: Wed Feb 12 17:10:24 2025 +0800

    [FLINK-37021][state/forst] Support reusing files in LEGACY recovery mode. (#26147)
---
 .../state/forst/datatransfer/DataTransferStrategyBuilder.java      | 2 +-
 .../flink/state/forst/datatransfer/DataTransferStrategyTest.java   | 7 +++----
 2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/flink-state-backends/flink-statebackend-forst/src/main/java/org/apache/flink/state/forst/datatransfer/DataTransferStrategyBuilder.java b/flink-state-backends/flink-statebackend-forst/src/main/java/org/apache/flink/state/forst/datatransfer/DataTransferStrategyBuilder.java
index 7521f435615..fbbb68d113c 100644
--- a/flink-state-backends/flink-statebackend-forst/src/main/java/org/apache/flink/state/forst/datatransfer/DataTransferStrategyBuilder.java
+++ b/flink-state-backends/flink-statebackend-forst/src/main/java/org/apache/flink/state/forst/datatransfer/DataTransferStrategyBuilder.java
@@ -125,7 +125,7 @@ public class DataTransferStrategyBuilder {
         if (forStFlinkFileSystem == null
                 || cpSharedFs == null
                 || !forStFlinkFileSystem.getUri().equals(cpSharedFs.getUri())
-                || recoveryClaimMode != RecoveryClaimMode.CLAIM) {
+                || recoveryClaimMode == RecoveryClaimMode.NO_CLAIM) {
             strategy =
                     forStFlinkFileSystem == null
                             ? new CopyDataTransferStrategy()
diff --git a/flink-state-backends/flink-statebackend-forst/src/test/java/org/apache/flink/state/forst/datatransfer/DataTransferStrategyTest.java b/flink-state-backends/flink-statebackend-forst/src/test/java/org/apache/flink/state/forst/datatransfer/DataTransferStrategyTest.java
index 7b06d74d94b..c91391d3913 100644
--- a/flink-state-backends/flink-statebackend-forst/src/test/java/org/apache/flink/state/forst/datatransfer/DataTransferStrategyTest.java
+++ b/flink-state-backends/flink-statebackend-forst/src/test/java/org/apache/flink/state/forst/datatransfer/DataTransferStrategyTest.java
@@ -109,8 +109,6 @@ public class DataTransferStrategyTest {
 
         Map<String, Path> dbFilePaths = new HashMap<>();
 
-        FileOwnershipDecider fileOwnershipDecider;
-
         DBFilesContainer(Path dbLocalBase, Path dbRemoteBase) throws IOException {
             realFileSystem = LocalFileSystem.getLocalFileSystem();
 
@@ -133,8 +131,6 @@ public class DataTransferStrategyTest {
                             4096);
             tmpResourcesRegistry = new CloseableRegistry();
             closeableRegistry = new CloseableRegistry();
-
-            this.fileOwnershipDecider = fileOwnershipDecider;
         }
 
         private void createDbFiles(List<String> fileNames) throws IOException {
@@ -480,6 +476,9 @@ public class DataTransferStrategyTest {
         testRestoreStrategyAsExpected(
                 forStFlinkFileSystem, RecoveryClaimMode.NO_CLAIM, CopyDataTransferStrategy.class);
 
+        testRestoreStrategyAsExpected(
+                forStFlinkFileSystem, RecoveryClaimMode.LEGACY, ReusableDataTransferStrategy.class);
+
         testRestoreStrategyAsExpected(
                 null, RecoveryClaimMode.CLAIM, CopyDataTransferStrategy.class);