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 8a6f3437a3f IGNITE-27318 Use MessageSerializer for 
TcpDiscoveryRingLatencyCheckMessage (#12578)
8a6f3437a3f is described below

commit 8a6f3437a3f98436b8f62bdbc321ca16ab2e62dd
Author: Vladimir Steshin <[email protected]>
AuthorDate: Wed Dec 17 13:47:36 2025 +0300

    IGNITE-27318 Use MessageSerializer for TcpDiscoveryRingLatencyCheckMessage 
(#12578)
---
 .../discovery/DiscoveryMessageFactory.java         |  3 ++
 .../ignite/spi/discovery/tcp/ServerImpl.java       |  2 +-
 .../TcpDiscoveryRingLatencyCheckMessage.java       | 55 ++++++++++++++++------
 3 files changed, 45 insertions(+), 15 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 a858bdb5fce..7786560ad90 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
@@ -24,6 +24,7 @@ import 
org.apache.ignite.internal.codegen.TcpDiscoveryConnectionCheckMessageSeri
 import 
org.apache.ignite.internal.codegen.TcpDiscoveryLoopbackProblemMessageSerializer;
 import org.apache.ignite.internal.codegen.TcpDiscoveryPingRequestSerializer;
 import org.apache.ignite.internal.codegen.TcpDiscoveryPingResponseSerializer;
+import 
org.apache.ignite.internal.codegen.TcpDiscoveryRingLatencyCheckMessageSerializer;
 import org.apache.ignite.plugin.extensions.communication.MessageFactory;
 import 
org.apache.ignite.plugin.extensions.communication.MessageFactoryProvider;
 import 
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryCheckFailedMessage;
@@ -33,6 +34,7 @@ import 
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryConnectionCheckM
 import 
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryLoopbackProblemMessage;
 import org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryPingRequest;
 import org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryPingResponse;
+import 
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryRingLatencyCheckMessage;
 
 /** Message factory for discovery messages. */
 public class DiscoveryMessageFactory implements MessageFactoryProvider {
@@ -45,5 +47,6 @@ public class DiscoveryMessageFactory implements 
MessageFactoryProvider {
         factory.register((short)4, TcpDiscoveryClientPingResponse::new, new 
TcpDiscoveryClientPingResponseSerializer());
         factory.register((short)5, TcpDiscoveryLoopbackProblemMessage::new, 
new TcpDiscoveryLoopbackProblemMessageSerializer());
         factory.register((short)6, TcpDiscoveryConnectionCheckMessage::new, 
new TcpDiscoveryConnectionCheckMessageSerializer());
+        factory.register((short)7, TcpDiscoveryRingLatencyCheckMessage::new, 
new TcpDiscoveryRingLatencyCheckMessageSerializer());
     }
 }
diff --git 
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
 
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
index da2c1e32b2a..470fafa4379 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java
@@ -5423,7 +5423,7 @@ class ServerImpl extends TcpDiscoveryImpl {
             if (msg.maxHopsReached()) {
                 if (log.isInfoEnabled()) {
                     log.info("Latency check has been discarded (max hops 
reached) [id=" + msg.id() +
-                        ", maxHops=" + msg.maxHops() + ']');
+                        ", maxHops=" + msg.maximalHops() + ']');
                 }
 
                 return;
diff --git 
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryRingLatencyCheckMessage.java
 
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryRingLatencyCheckMessage.java
index 4c66dfc9ff0..5a30d6367f0 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryRingLatencyCheckMessage.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryRingLatencyCheckMessage.java
@@ -18,29 +18,36 @@
 package org.apache.ignite.spi.discovery.tcp.messages;
 
 import java.util.UUID;
+import org.apache.ignite.internal.Order;
+import org.apache.ignite.internal.managers.discovery.DiscoveryMessageFactory;
 import org.apache.ignite.internal.util.typedef.internal.S;
+import org.apache.ignite.plugin.extensions.communication.Message;
 
 /**
  *
  */
-public class TcpDiscoveryRingLatencyCheckMessage extends 
TcpDiscoveryAbstractMessage {
+public class TcpDiscoveryRingLatencyCheckMessage extends 
TcpDiscoveryAbstractMessage implements Message {
     /** */
     private static final long serialVersionUID = 0L;
 
-    /** */
+    /** Maximal hops number. */
+    @Order(value = 5, method = "maximalHops")
     private int maxHops;
 
-    /** */
-    private int curHop;
+    /** Current hops reached. */
+    @Order(value = 6, method = "currentHops")
+    private int curHops;
+
+    /** Empty constructor for {@link DiscoveryMessageFactory}. */
+    public TcpDiscoveryRingLatencyCheckMessage() {
+        // No-op.
+    }
 
     /**
      * @param creatorNodeId Creator node ID.
-     * @param maxHops Max hops for this message.
+     * @param maxHops Maximal hops number for this message.
      */
-    public TcpDiscoveryRingLatencyCheckMessage(
-        UUID creatorNodeId,
-        int maxHops
-    ) {
+    public TcpDiscoveryRingLatencyCheckMessage(UUID creatorNodeId, int 
maxHops) {
         super(creatorNodeId);
 
         assert maxHops > 0;
@@ -52,21 +59,41 @@ public class TcpDiscoveryRingLatencyCheckMessage extends 
TcpDiscoveryAbstractMes
      *
      */
     public void onRead() {
-        curHop++;
+        curHops++;
+    }
+
+    /** @return Current hops reached. */
+    public int currentHops() {
+        return curHops;
+    }
+
+    /** @param curHop Current hops reached. */
+    public void currentHops(int curHop) {
+        curHops = curHop;
     }
 
     /**
-     * @return Max hops.
+     * @return Maximal hops number.
      */
-    public int maxHops() {
+    public int maximalHops() {
         return maxHops;
     }
 
+    /** @param maxHops Maximal hops. */
+    public void maximalHops(int maxHops) {
+        this.maxHops = maxHops;
+    }
+
     /**
-     * @return {@code True} if max hops has been reached.
+     * @return {@code True} if max hops reached.
      */
     public boolean maxHopsReached() {
-        return curHop == maxHops;
+        return curHops == maxHops;
+    }
+
+    /** {@inheritDoc} */
+    @Override public short directType() {
+        return 7;
     }
 
     /** {@inheritDoc} */

Reply via email to