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());