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

nizhikov pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git


The following commit(s) were added to refs/heads/master by this push:
     new f013321f29b [MINOR] Move maintenance file to NodeFileTree (#12105)
f013321f29b is described below

commit f013321f29b066d1c92da9116f89dc74c9b0e662
Author: Nikolay <[email protected]>
AuthorDate: Wed May 28 11:35:42 2025 +0300

    [MINOR] Move maintenance file to NodeFileTree (#12105)
---
 .../ignite/internal/maintenance/MaintenanceFileStore.java    | 11 +++++------
 .../processors/cache/persistence/filename/NodeFileTree.java  | 12 ++++++++++--
 .../cache/persistence/IgnitePdsDefragmentationTest.java      |  5 +++--
 3 files changed, 18 insertions(+), 10 deletions(-)

diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/maintenance/MaintenanceFileStore.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/maintenance/MaintenanceFileStore.java
index e9a95ec89bd..19a22be9a88 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/maintenance/MaintenanceFileStore.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/maintenance/MaintenanceFileStore.java
@@ -27,6 +27,7 @@ import org.apache.ignite.IgniteCheckedException;
 import org.apache.ignite.IgniteLogger;
 import org.apache.ignite.internal.processors.cache.persistence.file.FileIO;
 import 
org.apache.ignite.internal.processors.cache.persistence.file.FileIOFactory;
+import 
org.apache.ignite.internal.processors.cache.persistence.filename.NodeFileTree;
 import 
org.apache.ignite.internal.processors.cache.persistence.filename.PdsFoldersResolver;
 import org.apache.ignite.internal.util.typedef.internal.U;
 import org.apache.ignite.maintenance.MaintenanceTask;
@@ -49,9 +50,6 @@ import org.apache.ignite.maintenance.MaintenanceTask;
  * </ol>
  */
 public class MaintenanceFileStore {
-    /** */
-    public static final String MAINTENANCE_FILE_NAME = 
"maintenance_tasks.mntc";
-
     /** */
     private static final String TASKS_SEPARATOR = System.lineSeparator();
 
@@ -99,10 +97,11 @@ public class MaintenanceFileStore {
         if (disabled)
             return;
 
-        File storeDir = pdsFoldersResolver.fileTree().nodeStorage();
-        U.ensureDirectory(storeDir, "store directory for node persistent 
data", log);
+        NodeFileTree ft = pdsFoldersResolver.fileTree();
+
+        U.ensureDirectory(ft.nodeStorage(), "store directory for node 
persistent data", log);
 
-        mntcTasksFile = new File(storeDir, MAINTENANCE_FILE_NAME);
+        mntcTasksFile = ft.maintenanceFile();
 
         if (!mntcTasksFile.exists())
             mntcTasksFile.createNewFile();
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/filename/NodeFileTree.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/filename/NodeFileTree.java
index 61c1e2a9a44..31349cec70d 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/filename/NodeFileTree.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/filename/NodeFileTree.java
@@ -113,7 +113,7 @@ import static 
org.apache.ignite.internal.processors.cache.persistence.metastorag
  * │  │  │  ├── 1737804007693-96128bb0-5361-495a-b593-53dc4339a56d-END.bin
  * │  │  │  └── 1737804007693-96128bb0-5361-495a-b593-53dc4339a56d-START.bin
  * │  │  ├── lock
- * │  │  ├── maintenance_tasks.mntc
+ * │  │  ├── maintenance_tasks.mntc                                            
 ← maintenance file (node 0).
  * │  │  ├── metastorage
  * │  │  │  ├── part-0.bin
  * │  │  │  └── part-1.bin
@@ -128,7 +128,7 @@ import static 
org.apache.ignite.internal.processors.cache.persistence.metastorag
  * │  │  ├── cp                                                                
 ← checkpoint (node 1).
  * ...
  * │  │  ├── lock
- * │  │  ├── maintenance_tasks.mntc
+ * │  │  ├── maintenance_tasks.mntc                                            
 ← maintenance file (node 1).
  * │  │  ├── metastorage
  * ...
  * │  │  └── snp                                                               
 ← snpTmp (node 1)
@@ -258,6 +258,9 @@ public class NodeFileTree extends SharedFileTree {
     /** CDC caches state file name. */
     private static final String CDC_CACHES_STATE_FILE_NAME = 
"cdc-caches-state" + FILE_SUFFIX;
 
+    /** Maintenance file name. */
+    private static final String MAINTENANCE_FILE_NAME = 
"maintenance_tasks.mntc";
+
     /** Folder name for consistent id. */
     private final String folderName;
 
@@ -899,6 +902,11 @@ public class NodeFileTree extends SharedFileTree {
         return cdcState().resolve(CDC_MODE_FILE_NAME + TMP_SUFFIX);
     }
 
+    /** @return Maintenance file. */
+    public File maintenanceFile() {
+        return new File(nodeStorage, MAINTENANCE_FILE_NAME);
+    }
+
     /**
      * @param includeMeta If {@code true} then include metadata directory into 
results.
      * @param filter Cache group names to filter.
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsDefragmentationTest.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsDefragmentationTest.java
index a20dfd61fc1..7812ed7594b 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsDefragmentationTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/IgnitePdsDefragmentationTest.java
@@ -55,7 +55,6 @@ import org.apache.ignite.failure.FailureHandler;
 import org.apache.ignite.failure.StopNodeFailureHandler;
 import org.apache.ignite.internal.IgniteEx;
 import org.apache.ignite.internal.IgniteInterruptedCheckedException;
-import org.apache.ignite.internal.maintenance.MaintenanceFileStore;
 import org.apache.ignite.internal.pagemem.store.PageStoreCollection;
 import org.apache.ignite.internal.processors.cache.CacheGroupContext;
 import 
org.apache.ignite.internal.processors.cache.persistence.file.FileIOFactory;
@@ -360,7 +359,9 @@ public class IgnitePdsDefragmentationTest extends 
GridCommonAbstractTest {
     public void testFailoverRestartWithoutDefragmentation() throws Exception {
         testFailover(cft -> {
             try {
-                File mntcRecFile = new File(cft.storage().getParent(), 
MaintenanceFileStore.MAINTENANCE_FILE_NAME);
+                NodeFileTree ft = GridTestUtils.getFieldValue(cft, "ft");
+
+                File mntcRecFile = ft.maintenanceFile();
 
                 assertTrue(mntcRecFile.exists());
 

Reply via email to