This is an automated email from the ASF dual-hosted git repository.
sergeychugunov 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 894c0c9f4e7 IGNITE-27413 Use MessageSerializer for
TcpDiscoveryDuplicateIdMessage (#12596)
894c0c9f4e7 is described below
commit 894c0c9f4e73f1b18bea02f238838a3ed44e9934
Author: Dmitry Werner <[email protected]>
AuthorDate: Thu Dec 25 12:41:41 2025 +0500
IGNITE-27413 Use MessageSerializer for TcpDiscoveryDuplicateIdMessage
(#12596)
---
.../discovery/DiscoveryMessageFactory.java | 3 ++
.../ignite/spi/discovery/tcp/TcpDiscoverySpi.java | 2 +-
.../messages/TcpDiscoveryDuplicateIdMessage.java | 43 +++++++++-------------
3 files changed, 22 insertions(+), 26 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 ef75310bb19..1c01592fd0d 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
@@ -25,6 +25,7 @@ import
org.apache.ignite.internal.codegen.TcpDiscoveryClientPingRequestSerialize
import
org.apache.ignite.internal.codegen.TcpDiscoveryClientPingResponseSerializer;
import
org.apache.ignite.internal.codegen.TcpDiscoveryConnectionCheckMessageSerializer;
import org.apache.ignite.internal.codegen.TcpDiscoveryDiscardMessageSerializer;
+import
org.apache.ignite.internal.codegen.TcpDiscoveryDuplicateIdMessageSerializer;
import
org.apache.ignite.internal.codegen.TcpDiscoveryHandshakeRequestSerializer;
import
org.apache.ignite.internal.codegen.TcpDiscoveryHandshakeResponseSerializer;
import
org.apache.ignite.internal.codegen.TcpDiscoveryLoopbackProblemMessageSerializer;
@@ -41,6 +42,7 @@ import
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryClientPingReques
import
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryClientPingResponse;
import
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryConnectionCheckMessage;
import org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryDiscardMessage;
+import
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryDuplicateIdMessage;
import
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryHandshakeRequest;
import
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryHandshakeResponse;
import
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryLoopbackProblemMessage;
@@ -67,5 +69,6 @@ public class DiscoveryMessageFactory implements
MessageFactoryProvider {
factory.register((short)9, TcpDiscoveryDiscardMessage::new, new
TcpDiscoveryDiscardMessageSerializer());
factory.register((short)10, TcpDiscoveryHandshakeResponse::new, new
TcpDiscoveryHandshakeResponseSerializer());
factory.register((short)11, TcpDiscoveryAuthFailedMessage::new, new
TcpDiscoveryAuthFailedMessageSerializer());
+ factory.register((short)12, TcpDiscoveryDuplicateIdMessage::new, new
TcpDiscoveryDuplicateIdMessageSerializer());
}
}
diff --git
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
index 7dff5458b85..b8cba5dd83f 100644
---
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
+++
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
@@ -2005,7 +2005,7 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter
implements IgniteDiscovery
.append("(fix configuration and restart local node) [localNode=")
.append(locNode)
.append(", existingNode=")
- .append(msg.node() == null ? msg.nodeId() : msg.node())
+ .append(msg.nodeId())
.append(']');
return new IgniteSpiException(errorMsgBldr.toString());
diff --git
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryDuplicateIdMessage.java
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryDuplicateIdMessage.java
index f8f1cf5a66b..c78d1b5284f 100644
---
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryDuplicateIdMessage.java
+++
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryDuplicateIdMessage.java
@@ -18,36 +18,25 @@
package org.apache.ignite.spi.discovery.tcp.messages;
import java.util.UUID;
+import org.apache.ignite.internal.Order;
import org.apache.ignite.internal.util.typedef.internal.S;
-import org.apache.ignite.spi.discovery.tcp.internal.TcpDiscoveryNode;
+import org.apache.ignite.plugin.extensions.communication.Message;
/**
* Message telling joining node that new topology already contain
* different node with same ID.
*/
-public class TcpDiscoveryDuplicateIdMessage extends
TcpDiscoveryAbstractMessage {
+public class TcpDiscoveryDuplicateIdMessage extends
TcpDiscoveryAbstractMessage implements Message {
/** */
private static final long serialVersionUID = 0L;
- /** Node with duplicate ID. */
- private final TcpDiscoveryNode node;
-
/** ID of the node with duplicate ID. */
- private final UUID nodeId;
-
- /**
- * Constructor.
- *
- * @param creatorNodeId Creator node ID.
- * @param node Node with same ID.
- */
- public TcpDiscoveryDuplicateIdMessage(UUID creatorNodeId, TcpDiscoveryNode
node) {
- super(creatorNodeId);
+ @Order(5)
+ private UUID nodeId;
- assert node != null;
-
- this.node = node;
- this.nodeId = null;
+ /** */
+ public TcpDiscoveryDuplicateIdMessage() {
+ // No-op.
}
/**
@@ -61,26 +50,30 @@ public class TcpDiscoveryDuplicateIdMessage extends
TcpDiscoveryAbstractMessage
assert nodeId != null;
- this.node = null;
this.nodeId = nodeId;
}
/**
* @return Node with duplicate ID.
*/
- public TcpDiscoveryNode node() {
- return node;
+ public UUID nodeId() {
+ return nodeId;
}
/**
- * @return Node with duplicate ID.
+ * @param nodeId Node with duplicate ID.
*/
- public UUID nodeId() {
- return nodeId;
+ public void nodeId(UUID nodeId) {
+ this.nodeId = nodeId;
}
/** {@inheritDoc} */
@Override public String toString() {
return S.toString(TcpDiscoveryDuplicateIdMessage.class, this, "super",
super.toString());
}
+
+ /** {@inheritDoc} */
+ @Override public short directType() {
+ return 12;
+ }
}