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

shishkovilja 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 994b8033d0d IGNITE-28397 Remove IgniteDhtPartitionsToReloadMap (#12957)
994b8033d0d is described below

commit 994b8033d0da2b278138a7a32e99f2f62b0071b8
Author: Dmitry Werner <[email protected]>
AuthorDate: Mon Apr 6 14:02:51 2026 +0500

    IGNITE-28397 Remove IgniteDhtPartitionsToReloadMap (#12957)
---
 .../communication/GridIoMessageFactory.java        |  4 --
 .../cache/GridCachePartitionExchangeManager.java   |  5 +-
 .../preloader/GridDhtPartitionsExchangeFuture.java | 13 +++-
 .../preloader/GridDhtPartitionsFullMessage.java    | 13 ++--
 .../preloader/IgniteDhtPartitionsToReloadMap.java  | 75 ----------------------
 .../main/resources/META-INF/classnames.properties  |  1 -
 .../communication/CompressedMessageTest.java       | 10 +--
 7 files changed, 24 insertions(+), 97 deletions(-)

diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
index 5ca6b39adcc..6eff060a046 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
@@ -191,8 +191,6 @@ import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.Ign
 import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.IgniteDhtDemandedPartitionsMapSerializer;
 import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.IgniteDhtPartitionHistorySuppliersMap;
 import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.IgniteDhtPartitionHistorySuppliersMapSerializer;
-import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.IgniteDhtPartitionsToReloadMap;
-import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.IgniteDhtPartitionsToReloadMapSerializer;
 import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.latch.LatchAckMessage;
 import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.latch.LatchAckMessageSerializer;
 import 
org.apache.ignite.internal.processors.cache.distributed.near.CacheVersionedValue;
@@ -551,8 +549,6 @@ public class GridIoMessageFactory implements 
MessageFactoryProvider {
         factory.register(508, GroupPartitionIdPair::new, new 
GroupPartitionIdPairSerializer());
         factory.register(510, IgniteDhtPartitionHistorySuppliersMap::new,
             new IgniteDhtPartitionHistorySuppliersMapSerializer());
-        factory.register(513, IgniteDhtPartitionsToReloadMap::new,
-            new IgniteDhtPartitionsToReloadMapSerializer());
         factory.register(517, GridPartitionStateMap::new, new 
GridPartitionStateMapSerializer());
         factory.register(518, GridDhtPartitionMap::new, new 
GridDhtPartitionMapSerializer());
         factory.register(519, GridDhtPartitionFullMap::new, new 
GridDhtPartitionFullMapSerializer());
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
index 55ae24bbaa3..c06eeaad393 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCachePartitionExchangeManager.java
@@ -88,7 +88,6 @@ import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.Gri
 import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsSingleMessage;
 import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsSingleRequest;
 import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.IgniteDhtPartitionHistorySuppliersMap;
-import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.IgniteDhtPartitionsToReloadMap;
 import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.PartitionsExchangeAware;
 import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.RebalanceReassignExchangeTask;
 import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.StopCachesOnClientReconnectExchangeTask;
@@ -1350,7 +1349,7 @@ public class GridCachePartitionExchangeManager<K, V> 
extends GridCacheSharedMana
         @Nullable final GridDhtPartitionExchangeId exchId,
         @Nullable GridCacheVersion lastVer,
         @Nullable IgniteDhtPartitionHistorySuppliersMap partHistSuppliers,
-        @Nullable IgniteDhtPartitionsToReloadMap partsToReload
+        @Nullable Map<UUID, Map<Integer, Set<Integer>>> partsToReload
     ) {
         Collection<CacheGroupContext> grps = cctx.cache().cacheGroups();
 
@@ -1371,7 +1370,7 @@ public class GridCachePartitionExchangeManager<K, V> 
extends GridCacheSharedMana
         @Nullable final GridDhtPartitionExchangeId exchId,
         @Nullable GridCacheVersion lastVer,
         @Nullable IgniteDhtPartitionHistorySuppliersMap partHistSuppliers,
-        @Nullable IgniteDhtPartitionsToReloadMap partsToReload,
+        @Nullable Map<UUID, Map<Integer, Set<Integer>>> partsToReload,
         Collection<CacheGroupContext> grps
     ) {
         AffinityTopologyVersion ver = exchId != null ? 
exchId.topologyVersion() : AffinityTopologyVersion.NONE;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
index e19ba2378e0..c269af4923e 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsExchangeFuture.java
@@ -340,7 +340,7 @@ public class GridDhtPartitionsExchangeFuture extends 
GridDhtTopologyFutureAdapte
 
     /** */
     @GridToStringExclude
-    private final IgniteDhtPartitionsToReloadMap partsToReload = new 
IgniteDhtPartitionsToReloadMap();
+    private final Map<UUID, Map<Integer, Set<Integer>>> partsToReload = new 
HashMap<>();
 
     /** */
     private final AtomicBoolean done = new AtomicBoolean();
@@ -3425,8 +3425,15 @@ public class GridDhtPartitionsExchangeFuture extends 
GridDhtTopologyFutureAdapte
             UUID nodeId = e.getKey();
             Set<Integer> parts = e.getValue();
 
-            for (int part : parts)
-                partsToReload.put(nodeId, top.groupId(), part);
+            for (int part : parts) {
+                synchronized (partsToReload) {
+                    Map<Integer, Set<Integer>> nodeMap = 
partsToReload.computeIfAbsent(nodeId, k -> new HashMap<>());
+
+                    Set<Integer> partsToReload = 
nodeMap.computeIfAbsent(top.groupId(), k -> new HashSet<>());
+
+                    partsToReload.add(part);
+                }
+            }
         }
     }
 
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsFullMessage.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsFullMessage.java
index a8076b7a05a..84716df72f2 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsFullMessage.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/GridDhtPartitionsFullMessage.java
@@ -82,7 +82,7 @@ public class GridDhtPartitionsFullMessage extends 
GridDhtPartitionsAbstractMessa
     @Order(4)
     @Compress
     @GridToStringInclude
-    IgniteDhtPartitionsToReloadMap partsToReload;
+    Map<UUID, Map<Integer, Set<Integer>>> partsToReload;
 
     /** Partition sizes. */
     @Order(5)
@@ -144,7 +144,7 @@ public class GridDhtPartitionsFullMessage extends 
GridDhtPartitionsAbstractMessa
         @Nullable GridCacheVersion lastVer,
         @NotNull AffinityTopologyVersion topVer,
         @Nullable IgniteDhtPartitionHistorySuppliersMap partHistSuppliers,
-        @Nullable IgniteDhtPartitionsToReloadMap partsToReload) {
+        @Nullable Map<UUID, Map<Integer, Set<Integer>>> partsToReload) {
         super(id, lastVer);
 
         assert id == null || topVer.equals(id.topologyVersion());
@@ -337,7 +337,11 @@ public class GridDhtPartitionsFullMessage extends 
GridDhtPartitionsAbstractMessa
         if (partsToReload == null)
             return Collections.emptySet();
 
-        return partsToReload.get(nodeId, grpId);
+        synchronized (partsToReload) {
+            Map<Integer, Set<Integer>> nodeMap = partsToReload.get(nodeId);
+
+            return nodeMap == null ? Collections.emptySet() : 
(Set<Integer>)F.emptyIfNull(nodeMap.get(grpId));
+        }
     }
 
     /**
@@ -443,9 +447,6 @@ public class GridDhtPartitionsFullMessage extends 
GridDhtPartitionsAbstractMessa
         if (partHistSuppliers == null)
             partHistSuppliers = new IgniteDhtPartitionHistorySuppliersMap();
 
-        if (partsToReload == null)
-            partsToReload = new IgniteDhtPartitionsToReloadMap();
-
         errs = errMsgs == null ? null : F.viewReadOnly(errMsgs, e -> 
e.error());
     }
 
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/IgniteDhtPartitionsToReloadMap.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/IgniteDhtPartitionsToReloadMap.java
deleted file mode 100644
index d8cc8d9674c..00000000000
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/preloader/IgniteDhtPartitionsToReloadMap.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package org.apache.ignite.internal.processors.cache.distributed.dht.preloader;
-
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-import java.util.UUID;
-import org.apache.ignite.internal.Order;
-import org.apache.ignite.internal.util.typedef.F;
-import org.apache.ignite.internal.util.typedef.internal.S;
-import org.apache.ignite.plugin.extensions.communication.Message;
-
-/**
- * Partition reload map.
- */
-public class IgniteDhtPartitionsToReloadMap implements Message {
-    /** */
-    @Order(0)
-    Map<UUID, Map<Integer, Set<Integer>>> map;
-
-    /**
-     * @param nodeId Node ID.
-     * @param cacheId Cache ID.
-     * @return Set of partitions to reload.
-     */
-    public synchronized Set<Integer> get(UUID nodeId, int cacheId) {
-        if (map == null)
-            return Collections.emptySet();
-
-        Map<Integer, Set<Integer>> nodeMap = map.get(nodeId);
-
-        return nodeMap == null ? Collections.emptySet() : 
(Set<Integer>)F.emptyIfNull(nodeMap.get(cacheId));
-    }
-
-    /**
-     * @param nodeId Node ID.
-     * @param cacheId Cache ID.
-     * @param partId Partition ID.
-     */
-    public synchronized void put(UUID nodeId, int cacheId, int partId) {
-        if (map == null)
-            map = new HashMap<>();
-
-        Map<Integer, Set<Integer>> nodeMap = map.computeIfAbsent(nodeId, k -> 
new HashMap<>());
-
-        Set<Integer> parts = nodeMap.computeIfAbsent(cacheId, k -> new 
HashSet<>());
-
-        parts.add(partId);
-    }
-
-    /** {@inheritDoc} */
-    @Override public String toString() {
-        return S.toString(IgniteDhtPartitionsToReloadMap.class, this);
-    }
-
-}
diff --git a/modules/core/src/main/resources/META-INF/classnames.properties 
b/modules/core/src/main/resources/META-INF/classnames.properties
index 5268663d0da..50848832fe6 100644
--- a/modules/core/src/main/resources/META-INF/classnames.properties
+++ b/modules/core/src/main/resources/META-INF/classnames.properties
@@ -1193,7 +1193,6 @@ 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPre
 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPreloaderAssignments
 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.IgniteDhtDemandedPartitionsMap
 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.IgniteDhtPartitionHistorySuppliersMap
-org.apache.ignite.internal.processors.cache.distributed.dht.preloader.IgniteDhtPartitionsToReloadMap
 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.IgniteHistoricalIterator
 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.IgniteHistoricalIteratorException
 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.IgniteRebalanceIteratorImpl
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/CompressedMessageTest.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/CompressedMessageTest.java
index fb96d7da32e..8b76d8e2f43 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/CompressedMessageTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/CompressedMessageTest.java
@@ -18,6 +18,7 @@
 package org.apache.ignite.internal.managers.communication;
 
 import java.nio.ByteBuffer;
+import java.util.HashMap;
 import java.util.Map;
 import java.util.Set;
 import java.util.UUID;
@@ -29,7 +30,6 @@ import 
org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion;
 import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsFullMessage;
 import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GroupPartitionIdPair;
 import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.IgniteDhtPartitionHistorySuppliersMap;
-import 
org.apache.ignite.internal.processors.cache.distributed.dht.preloader.IgniteDhtPartitionsToReloadMap;
 import org.apache.ignite.internal.util.typedef.internal.U;
 import org.apache.ignite.plugin.extensions.communication.Message;
 import org.apache.ignite.plugin.extensions.communication.MessageFactory;
@@ -108,13 +108,13 @@ public class CompressedMessageTest {
     /** */
     private GridDhtPartitionsFullMessage fullMessage() {
         IgniteDhtPartitionHistorySuppliersMap partHistSuppliers = new 
IgniteDhtPartitionHistorySuppliersMap();
-        IgniteDhtPartitionsToReloadMap partsToReload = new 
IgniteDhtPartitionsToReloadMap();
+        Map<UUID, Map<Integer, Set<Integer>>> partsToReload = new HashMap<>();
 
         for (int i = 0; i < 500; i++) {
             UUID uuid = UUID.randomUUID();
 
             partHistSuppliers.put(uuid, i, i + 1, i + 2);
-            partsToReload.put(uuid, i, i + 1);
+            partsToReload.put(uuid, Map.of(i, Set.of(i + 1)));
         }
 
         return new GridDhtPartitionsFullMessage(null, null, new 
AffinityTopologyVersion(0), partHistSuppliers, partsToReload);
@@ -130,8 +130,8 @@ public class CompressedMessageTest {
         for (Map.Entry<UUID, Map<GroupPartitionIdPair, Long>> entry : 
expHistSuppliers.entrySet())
             assertEquals(entry.getValue(), 
actHistSuppliers.get(entry.getKey()));
 
-        Map<UUID, Map<Integer, Set<Integer>>> expPartsToReload = 
U.field((Object)U.field(expected, "partsToReload"), "map");
-        Map<UUID, Map<Integer, Set<Integer>>> actPartsToReload = 
U.field((Object)U.field(actual, "partsToReload"), "map");
+        Map<UUID, Map<Integer, Set<Integer>>> expPartsToReload = 
U.field(expected, "partsToReload");
+        Map<UUID, Map<Integer, Set<Integer>>> actPartsToReload = 
U.field(actual, "partsToReload");
 
         assertEquals(expPartsToReload.size(), actPartsToReload.size());
 

Reply via email to