This is an automated email from the ASF dual-hosted git repository.
namelchev 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 2057b3c0b11 IGNITE-25461 Fixed validation of cache storage path on a
client node (#12090)
2057b3c0b11 is described below
commit 2057b3c0b11106ae47fe9e9be106ea48620c3113
Author: Nikita Amelchev <[email protected]>
AuthorDate: Fri May 23 11:04:39 2025 +0300
IGNITE-25461 Fixed validation of cache storage path on a client node
(#12090)
---
.../cache/ValidationOnNodeJoinUtils.java | 2 +-
.../CustomCacheStorageConfigurationSelfTest.java | 25 ++++++++++++++++++++++
2 files changed, 26 insertions(+), 1 deletion(-)
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/ValidationOnNodeJoinUtils.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/ValidationOnNodeJoinUtils.java
index 45e3aa4f695..5e4307a2525 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/ValidationOnNodeJoinUtils.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/ValidationOnNodeJoinUtils.java
@@ -390,7 +390,7 @@ public class ValidationOnNodeJoinUtils {
cacheSpec.toString());
}
- if (!F.isEmpty(cc.getStoragePath())) {
+ if (!F.isEmpty(cc.getStoragePath()) && !ctx.clientNode()) {
DataStorageConfiguration dsCfg = c.getDataStorageConfiguration();
String cs = cc.getStoragePath();
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/filename/CustomCacheStorageConfigurationSelfTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/filename/CustomCacheStorageConfigurationSelfTest.java
index 986cda86a28..b193c10b98b 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/filename/CustomCacheStorageConfigurationSelfTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/filename/CustomCacheStorageConfigurationSelfTest.java
@@ -169,4 +169,29 @@ public class CustomCacheStorageConfigurationSelfTest
extends GridCommonAbstractT
.setGroupName("grp").setStoragePath(myPath3.getAbsolutePath()));
}
}
+
+ /** */
+ @Test
+ public void testClientNodeJoin() throws Exception {
+ DataStorageConfiguration dsCfg = new DataStorageConfiguration()
+ .setStoragePath(myPath.getAbsolutePath())
+ .setDefaultDataRegionConfiguration(new
DataRegionConfiguration().setPersistenceEnabled(true));
+
+ CacheConfiguration<Object, Object> ccfg = new
CacheConfiguration<>(DEFAULT_CACHE_NAME)
+ .setStoragePath(myPath.getAbsolutePath());
+
+ try (IgniteEx srv = startGrid(getConfiguration("srv")
+ .setDataStorageConfiguration(dsCfg)
+ .setCacheConfiguration(ccfg)
+ )) {
+ srv.cluster().state(ClusterState.ACTIVE);
+
+ try (IgniteEx cliNode = startGrid(getConfiguration("client")
+ .setClientMode(true)
+ .setCacheConfiguration(ccfg)
+ )) {
+ assertTrue(cliNode.cacheNames().contains(DEFAULT_CACHE_NAME));
+ }
+ }
+ }
}