IGNITE-8053 Make sure local partitions collection does not change
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java
index 410e9b9..02ae44c 100755
--- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/GridCacheDatabaseSharedManager.java
@@ -128,7 +128,6 @@
import org.apache.ignite.internal.processors.cache.persistence.tree.io.PageIO;
import org.apache.ignite.internal.processors.cache.persistence.tree.io.PagePartitionMetaIO;
import org.apache.ignite.internal.processors.cache.persistence.wal.FileWALPointer;
-import org.apache.ignite.internal.processors.cache.persistence.wal.FileWriteAheadLogManager;
import org.apache.ignite.internal.processors.cache.persistence.wal.crc.PureJavaCrc32;
import org.apache.ignite.internal.processors.port.GridPortRecord;
import org.apache.ignite.internal.util.GridMultiCollectionWrapper;
@@ -376,7 +375,7 @@
private List<MetastorageLifecycleListener> metastorageLifecycleLsnrs;
/** Initially disabled cache groups. */
- public Collection<Integer> initiallyWalDisabledGrps;
+ private Collection<Integer> initiallyWalDisabledGrps;
/**
* @param ctx Kernal context.
@@ -3062,14 +3061,14 @@
if (grp.isLocal() || !grp.walEnabled())
continue;
- int locPartsSize = 0;
+ ArrayList<GridDhtLocalPartition> parts = new ArrayList<>();
- for (GridDhtLocalPartition ignored : grp.topology().currentLocalPartitions())
- locPartsSize++;
+ for (GridDhtLocalPartition part : grp.topology().currentLocalPartitions())
+ parts.add(part);
- CacheState state = new CacheState(locPartsSize);
+ CacheState state = new CacheState(parts.size());
- for (GridDhtLocalPartition part : grp.topology().currentLocalPartitions()) {
+ for (GridDhtLocalPartition part : parts) {
state.addPartitionState(
part.id(),
part.dataStore().fullSize(),