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 b4fce3996c7 IGNITE-26456 Fix dump creation when volatile data
structures exists (#12353)
b4fce3996c7 is described below
commit b4fce3996c7486e22d97f22a625b1e6a21bec5d2
Author: Nikolay <[email protected]>
AuthorDate: Thu Sep 18 09:40:38 2025 +0300
IGNITE-26456 Fix dump creation when volatile data structures exists (#12353)
---
.../persistence/snapshot/IgniteSnapshotManager.java | 2 +-
.../snapshot/dump/AbstractCacheDumpTest.java | 18 ++++++++++++++++++
2 files changed, 19 insertions(+), 1 deletion(-)
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/snapshot/IgniteSnapshotManager.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/snapshot/IgniteSnapshotManager.java
index 857e75bc610..39b6982aa18 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/snapshot/IgniteSnapshotManager.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/snapshot/IgniteSnapshotManager.java
@@ -2013,9 +2013,9 @@ public class IgniteSnapshotManager extends
GridCacheSharedManagerAdapter
Set<String> cacheGrpNames0 = cacheGrpNames == null ? null : new
HashSet<>(cacheGrpNames);
List<String> grps = (dump ?
cctx.cache().cacheGroupDescriptors().values() :
cctx.cache().persistentGroups()).stream()
+ .filter(desc ->
cctx.cache().cacheType(desc.config().getName()) == CacheType.USER)
.map(CacheGroupDescriptor::cacheOrGroupName)
.filter(n -> cacheGrpNames0 == null ||
cacheGrpNames0.remove(n))
- .filter(cacheName -> cctx.cache().cacheType(cacheName) ==
CacheType.USER)
.collect(Collectors.toList());
if (!F.isEmpty(cacheGrpNames0))
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/snapshot/dump/AbstractCacheDumpTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/snapshot/dump/AbstractCacheDumpTest.java
index 8ae0ab6146f..3995937fd04 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/snapshot/dump/AbstractCacheDumpTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/persistence/snapshot/dump/AbstractCacheDumpTest.java
@@ -32,8 +32,10 @@ import java.util.function.IntFunction;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
import org.apache.ignite.Ignite;
+import org.apache.ignite.IgniteAtomicSequence;
import org.apache.ignite.IgniteCache;
import org.apache.ignite.IgniteCheckedException;
+import org.apache.ignite.IgniteCountDownLatch;
import org.apache.ignite.IgniteDataStreamer;
import org.apache.ignite.IgniteException;
import org.apache.ignite.Ignition;
@@ -252,6 +254,8 @@ public abstract class AbstractCacheDumpTest extends
GridCommonAbstractTest {
ign.cluster().state(ClusterState.ACTIVE);
+ createDataStructures();
+
putData(cli.cache(DEFAULT_CACHE_NAME), cli.cache(CACHE_0),
cli.cache(CACHE_1));
return ign;
@@ -732,4 +736,18 @@ public abstract class AbstractCacheDumpTest extends
GridCommonAbstractTest {
assertTrue(stopped);
}
}
+
+ /**
+ * Creates some data structures in cluster.
+ * Cache group filter must exclude ds groups from dump.
+ */
+ private void createDataStructures() {
+ IgniteCountDownLatch latch = cli.countDownLatch("testSeq", 2, true,
true);
+
+ latch.countDown();
+
+ IgniteAtomicSequence seq = cli.atomicSequence("testSeq", 0, true);
+
+ seq.incrementAndGet();
+ }
}