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

av 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 3bd028531ab IGNITE-27966 Use message serializer for 
ClientCacheChangeDiscoveryMessage (#12805)
3bd028531ab is described below

commit 3bd028531ab917040306230f5e41fa28b6c96a81
Author: Alexey Abashev <[email protected]>
AuthorDate: Wed Mar 11 14:46:47 2026 +0300

    IGNITE-27966 Use message serializer for ClientCacheChangeDiscoveryMessage 
(#12805)
---
 .../discovery/DiscoveryMessageFactory.java         |  3 +++
 .../cache/ClientCacheChangeDiscoveryMessage.java   | 24 +++++++++++++++++-----
 2 files changed, 22 insertions(+), 5 deletions(-)

diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/DiscoveryMessageFactory.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/DiscoveryMessageFactory.java
index 83a6271af1c..1e31e1bf079 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/DiscoveryMessageFactory.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/DiscoveryMessageFactory.java
@@ -31,6 +31,8 @@ import 
org.apache.ignite.internal.processors.cache.CacheAffinityChangeMessage;
 import 
org.apache.ignite.internal.processors.cache.CacheAffinityChangeMessageSerializer;
 import 
org.apache.ignite.internal.processors.cache.CacheStatisticsModeChangeMessage;
 import 
org.apache.ignite.internal.processors.cache.CacheStatisticsModeChangeMessageSerializer;
+import 
org.apache.ignite.internal.processors.cache.ClientCacheChangeDiscoveryMessage;
+import 
org.apache.ignite.internal.processors.cache.ClientCacheChangeDiscoveryMessageSerializer;
 import 
org.apache.ignite.internal.processors.cache.TxTimeoutOnPartitionMapExchangeChangeMessage;
 import 
org.apache.ignite.internal.processors.cache.TxTimeoutOnPartitionMapExchangeChangeMessageSerializer;
 import org.apache.ignite.internal.processors.cache.WalStateFinishMessage;
@@ -220,5 +222,6 @@ public class DiscoveryMessageFactory implements 
MessageFactoryProvider {
         factory.register((short)513, StopRoutineAckDiscoveryMessage::new, new 
StopRoutineAckDiscoveryMessageSerializer());
         factory.register((short)514, StopRoutineDiscoveryMessage::new, new 
StopRoutineDiscoveryMessageSerializer());
         factory.register((short)515, CacheAffinityChangeMessage::new, new 
CacheAffinityChangeMessageSerializer());
+        factory.register((short)516, ClientCacheChangeDiscoveryMessage::new, 
new ClientCacheChangeDiscoveryMessageSerializer());
     }
 }
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/ClientCacheChangeDiscoveryMessage.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/ClientCacheChangeDiscoveryMessage.java
index 6f5640a23f6..5f25c6b7bf9 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/ClientCacheChangeDiscoveryMessage.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/ClientCacheChangeDiscoveryMessage.java
@@ -22,39 +22,48 @@ import java.util.HashSet;
 import java.util.Iterator;
 import java.util.Map;
 import java.util.Set;
+import org.apache.ignite.internal.Order;
 import org.apache.ignite.internal.managers.discovery.DiscoveryCustomMessage;
 import org.apache.ignite.internal.util.tostring.GridToStringInclude;
 import org.apache.ignite.internal.util.typedef.F;
 import org.apache.ignite.internal.util.typedef.internal.S;
 import org.apache.ignite.lang.IgniteUuid;
+import org.apache.ignite.plugin.extensions.communication.Message;
 import org.jetbrains.annotations.Nullable;
 
 /**
  * Sent from cache client node to asynchronously notify about started.closed 
client caches.
  */
-public class ClientCacheChangeDiscoveryMessage implements 
DiscoveryCustomMessage {
+public class ClientCacheChangeDiscoveryMessage implements 
DiscoveryCustomMessage, Message {
     /** */
     private static final long serialVersionUID = 0L;
 
     /** */
-    private final IgniteUuid id = IgniteUuid.randomUuid();
+    @Order(0)
+    IgniteUuid id;
 
     /** */
     @GridToStringInclude
-    private Map<Integer, Boolean> startedCaches;
+    @Order(1)
+    Map<Integer, Boolean> startedCaches;
 
     /** */
     @GridToStringInclude
-    private Set<Integer> closedCaches;
+    @Order(2)
+    Set<Integer> closedCaches;
 
     /** Update timeout object, used to batch multiple starts/close into single 
discovery message. */
-    private transient ClientCacheUpdateTimeout updateTimeoutObj;
+    private ClientCacheUpdateTimeout updateTimeoutObj;
+
+    /** */
+    public ClientCacheChangeDiscoveryMessage() {}
 
     /**
      * @param startedCaches Started caches.
      * @param closedCaches Closed caches.
      */
     public ClientCacheChangeDiscoveryMessage(Map<Integer, Boolean> 
startedCaches, Set<Integer> closedCaches) {
+        id = IgniteUuid.randomUuid();
         this.startedCaches = startedCaches;
         this.closedCaches = closedCaches;
     }
@@ -164,6 +173,11 @@ public class ClientCacheChangeDiscoveryMessage implements 
DiscoveryCustomMessage
         return null;
     }
 
+    /** {@inheritDoc} */
+    @Override public short directType() {
+        return 516;
+    }
+
     /** {@inheritDoc} */
     @Override public String toString() {
         return S.toString(ClientCacheChangeDiscoveryMessage.class, this);

Reply via email to