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 e2384f8dac4 IGNITE-28396 Remove NodeSpecificData (#12956)
e2384f8dac4 is described below
commit e2384f8dac4d100e55a096929dcebf6006fb0eba
Author: Dmitry Werner <[email protected]>
AuthorDate: Mon Mar 30 17:23:24 2026 +0500
IGNITE-28396 Remove NodeSpecificData (#12956)
---
.../discovery/DiscoveryMessageFactory.java | 3 -
.../tcp/internal/DiscoveryDataPacket.java | 31 +++------
.../discovery/tcp/messages/NodeSpecificData.java | 80 ----------------------
.../spi/discovery/tcp/TcpDiscoverySelfTest.java | 11 ++-
4 files changed, 15 insertions(+), 110 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 de204643a07..52c1091d054 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
@@ -140,8 +140,6 @@ import
org.apache.ignite.spi.discovery.tcp.messages.InetAddressMessage;
import
org.apache.ignite.spi.discovery.tcp.messages.InetAddressMessageSerializer;
import org.apache.ignite.spi.discovery.tcp.messages.InetSocketAddressMessage;
import
org.apache.ignite.spi.discovery.tcp.messages.InetSocketAddressMessageSerializer;
-import org.apache.ignite.spi.discovery.tcp.messages.NodeSpecificData;
-import org.apache.ignite.spi.discovery.tcp.messages.NodeSpecificDataSerializer;
import
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryAuthFailedMessage;
import
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryAuthFailedMessageSerializer;
import
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryCacheMetricsMessage;
@@ -233,7 +231,6 @@ public class DiscoveryMessageFactory implements
MessageFactoryProvider {
factory.register(-110, QueryField::new, new
QueryFieldMarshallableSerializer(marsh, clsLdr));
factory.register(-109, User::new, new UserSerializer());
factory.register(-108, UserManagementOperation::new, new
UserManagementOperationSerializer());
- factory.register(-107, NodeSpecificData::new, new
NodeSpecificDataSerializer());
factory.register(-106, DiscoveryDataPacket::new, new
DiscoveryDataPacketSerializer());
factory.register(-105, TcpDiscoveryNodeFullMetricsMessage::new, new
TcpDiscoveryNodeFullMetricsMessageSerializer());
factory.register(-104, TcpDiscoveryClientNodesMetricsMessage::new, new
TcpDiscoveryClientNodesMetricsMessageSerializer());
diff --git
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/internal/DiscoveryDataPacket.java
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/internal/DiscoveryDataPacket.java
index 6467f1ffa09..4922e7c0e86 100644
---
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/internal/DiscoveryDataPacket.java
+++
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/internal/DiscoveryDataPacket.java
@@ -33,7 +33,6 @@ import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.marshaller.Marshaller;
import org.apache.ignite.plugin.extensions.communication.Message;
import org.apache.ignite.spi.discovery.DiscoveryDataBag;
-import org.apache.ignite.spi.discovery.tcp.messages.NodeSpecificData;
import static
org.apache.ignite.internal.GridComponent.DiscoveryDataExchangeType.CONTINUOUS_PROC;
@@ -65,7 +64,7 @@ public class DiscoveryDataPacket implements Serializable,
Message {
/** */
@Order(3)
- Map<UUID, NodeSpecificData> nodeSpecificData = new HashMap<>();
+ Map<UUID, Map<Integer, byte[]>> nodeSpecificData = new HashMap<>();
/** */
private transient boolean joiningNodeClient;
@@ -109,7 +108,7 @@ public class DiscoveryDataPacket implements Serializable,
Message {
filterDuplicatedData(marshLocNodeSpecificData);
if (!marshLocNodeSpecificData.isEmpty())
- nodeSpecificData.put(nodeId, new
NodeSpecificData(marshLocNodeSpecificData));
+ nodeSpecificData.put(nodeId, marshLocNodeSpecificData);
}
}
@@ -143,11 +142,8 @@ public class DiscoveryDataPacket implements Serializable,
Message {
if (nodeSpecificData != null && !nodeSpecificData.isEmpty()) {
Map<UUID, Map<Integer, Serializable>> unmarshNodeSpecData =
U.newLinkedHashMap(nodeSpecificData.size());
- for (Map.Entry<UUID, NodeSpecificData> nodeBinEntry :
nodeSpecificData.entrySet()) {
- if (nodeBinEntry.getValue() == null)
- continue;
-
- Map<Integer, byte[]> nodeBinData =
nodeBinEntry.getValue().nodeSpecificData();
+ for (Map.Entry<UUID, Map<Integer, byte[]>> nodeBinEntry :
nodeSpecificData.entrySet()) {
+ Map<Integer, byte[]> nodeBinData = nodeBinEntry.getValue();
if (nodeBinData == null || nodeBinData.isEmpty())
continue;
@@ -274,17 +270,12 @@ public class DiscoveryDataPacket implements Serializable,
Message {
}
if (nodeSpecificData.size() != mrgdSpecifDataKeys.size()) {
- for (Map.Entry<UUID, NodeSpecificData> e :
nodeSpecificData.entrySet()) {
+ for (Map.Entry<UUID, Map<Integer, byte[]>> e :
nodeSpecificData.entrySet()) {
if (!mrgdSpecifDataKeys.contains(e.getKey())) {
- NodeSpecificData dataMsg =
existingDataPacket.nodeSpecificData.get(e.getKey());
-
- if (dataMsg == null)
- continue;
+ Map<Integer, byte[]> data =
existingDataPacket.nodeSpecificData.get(e.getKey());
- Map<Integer, byte[]> data = dataMsg.nodeSpecificData();
-
- if (data != null &&
mapsEqual(e.getValue().nodeSpecificData(), data)) {
- e.setValue(new NodeSpecificData(data));
+ if (data != null && mapsEqual(e.getValue(), data)) {
+ e.setValue(data);
boolean add = mrgdSpecifDataKeys.add(e.getKey());
@@ -428,15 +419,13 @@ public class DiscoveryDataPacket implements Serializable,
Message {
/** */
private void filterDuplicatedData(Map<Integer, byte[]> discoData) {
- for (NodeSpecificData existingData : nodeSpecificData.values()) {
+ for (Map<Integer, byte[]> existingData : nodeSpecificData.values()) {
Iterator<Map.Entry<Integer, byte[]>> it =
discoData.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<Integer, byte[]> discoDataEntry = it.next();
- byte[] curData = (existingData == null ||
existingData.nodeSpecificData() == null)
- ? null
- :
existingData.nodeSpecificData().get(discoDataEntry.getKey());
+ byte[] curData = existingData.get(discoDataEntry.getKey());
if (Arrays.equals(curData, discoDataEntry.getValue()))
it.remove();
diff --git
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/NodeSpecificData.java
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/NodeSpecificData.java
deleted file mode 100644
index 51a40c17868..00000000000
---
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/NodeSpecificData.java
+++ /dev/null
@@ -1,80 +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.spi.discovery.tcp.messages;
-
-import java.io.Serializable;
-import java.util.Map;
-import java.util.Objects;
-import org.apache.ignite.internal.Order;
-import org.apache.ignite.internal.util.typedef.internal.S;
-import org.apache.ignite.plugin.extensions.communication.Message;
-
-/**
- * A wrapper message that holds the mapping of discovery data belonging to a
cluster node and is sent to the joining node.
- */
-public class NodeSpecificData implements Message, Serializable {
- /** */
- private static final long serialVersionUID = 0L;
-
- /** Node specific data. */
- @Order(0)
- Map<Integer, byte[]> nodeSpecificData;
-
- /** Constructor. */
- public NodeSpecificData() {
- // No-op.
- }
-
- /**
- * @param nodeSpecificData Node specific data.
- */
- public NodeSpecificData(Map<Integer, byte[]> nodeSpecificData) {
- this.nodeSpecificData = nodeSpecificData;
- }
-
- /**
- * @return Node specific data.
- */
- public Map<Integer, byte[]> nodeSpecificData() {
- return nodeSpecificData;
- }
-
-
- /** {@inheritDoc} */
- @Override public boolean equals(Object o) {
- if (this == o)
- return true;
-
- if (o == null || getClass() != o.getClass())
- return false;
-
- NodeSpecificData that = (NodeSpecificData)o;
-
- return Objects.equals(nodeSpecificData, that.nodeSpecificData);
- }
-
- /** {@inheritDoc} */
- @Override public int hashCode() {
- return Objects.hashCode(nodeSpecificData);
- }
-
- /** {@inheritDoc} */
- @Override public String toString() {
- return S.toString(NodeSpecificData.class, this);
- }
-}
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySelfTest.java
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySelfTest.java
index 95494a0bcdb..8b59eea2450 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySelfTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySelfTest.java
@@ -79,7 +79,6 @@ import
org.apache.ignite.spi.discovery.tcp.internal.TcpDiscoveryNode;
import org.apache.ignite.spi.discovery.tcp.internal.TcpDiscoveryStatistics;
import
org.apache.ignite.spi.discovery.tcp.ipfinder.multicast.TcpDiscoveryMulticastIpFinder;
import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
-import org.apache.ignite.spi.discovery.tcp.messages.NodeSpecificData;
import
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryAbstractMessage;
import
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryConnectionCheckMessage;
import
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryCustomEventMessage;
@@ -2519,7 +2518,7 @@ public class TcpDiscoverySelfTest extends
GridCommonAbstractTest {
DiscoveryDataPacket dataPacket =
((TcpDiscoveryNodeAddedMessage)msg).gridDiscoveryData();
if (dataPacket != null) {
- Map<UUID, NodeSpecificData> discoData =
U.field(dataPacket, "nodeSpecificData");
+ Map<UUID, Map<Integer, byte[]>> discoData =
U.field(dataPacket, "nodeSpecificData");
checkDiscoData(discoData, msg);
}
@@ -2528,7 +2527,7 @@ public class TcpDiscoverySelfTest extends
GridCommonAbstractTest {
DiscoveryDataPacket dataPacket =
((TcpDiscoveryNodeAddFinishedMessage)msg).clientDiscoData();
if (dataPacket != null) {
- Map<UUID, NodeSpecificData> discoData =
U.field(dataPacket, "nodeSpecificData");
+ Map<UUID, Map<Integer, byte[]>> discoData =
U.field(dataPacket, "nodeSpecificData");
checkDiscoData(discoData, msg);
}
@@ -2541,12 +2540,12 @@ public class TcpDiscoverySelfTest extends
GridCommonAbstractTest {
* @param discoData Discovery data.
* @param msg Message.
*/
- private void checkDiscoData(Map<UUID, NodeSpecificData> discoData,
TcpDiscoveryAbstractMessage msg) {
+ private void checkDiscoData(Map<UUID, Map<Integer, byte[]>> discoData,
TcpDiscoveryAbstractMessage msg) {
if (discoData != null && discoData.size() > 1) {
int cnt = 0;
- for (NodeSpecificData data : discoData.values()) {
- if
(data.nodeSpecificData().containsKey(GridComponent.DiscoveryDataExchangeType.CACHE_PROC.ordinal()))
+ for (Map<Integer, byte[]> data : discoData.values()) {
+ if
(data.containsKey(GridComponent.DiscoveryDataExchangeType.CACHE_PROC.ordinal()))
cnt++;
}