Skip to content

Commit dfde8e9

Browse files
committed
IGNITE-27310 Use MessageSerializer for TcpDiscoveryDiscardMessage and TcpDiscoveryLoopbackProblemMessage
1 parent afff124 commit dfde8e9

File tree

10 files changed

+79
-17
lines changed

10 files changed

+79
-17
lines changed

modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/DiscoveryMessageFactory.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,17 @@
2020
import org.apache.ignite.internal.codegen.TcpDiscoveryCheckFailedMessageSerializer;
2121
import org.apache.ignite.internal.codegen.TcpDiscoveryClientPingRequestSerializer;
2222
import org.apache.ignite.internal.codegen.TcpDiscoveryClientPingResponseSerializer;
23+
import org.apache.ignite.internal.codegen.TcpDiscoveryDiscardMessageSerializer;
24+
import org.apache.ignite.internal.codegen.TcpDiscoveryLoopbackProblemMessageSerializer;
2325
import org.apache.ignite.internal.codegen.TcpDiscoveryPingRequestSerializer;
2426
import org.apache.ignite.internal.codegen.TcpDiscoveryPingResponseSerializer;
2527
import org.apache.ignite.plugin.extensions.communication.MessageFactory;
2628
import org.apache.ignite.plugin.extensions.communication.MessageFactoryProvider;
2729
import org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryCheckFailedMessage;
2830
import org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryClientPingRequest;
2931
import org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryClientPingResponse;
32+
import org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryDiscardMessage;
33+
import org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryLoopbackProblemMessage;
3034
import org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryPingRequest;
3135
import org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryPingResponse;
3236

@@ -39,5 +43,7 @@ public class DiscoveryMessageFactory implements MessageFactoryProvider {
3943
factory.register((short)2, TcpDiscoveryPingResponse::new, new TcpDiscoveryPingResponseSerializer());
4044
factory.register((short)3, TcpDiscoveryClientPingRequest::new, new TcpDiscoveryClientPingRequestSerializer());
4145
factory.register((short)4, TcpDiscoveryClientPingResponse::new, new TcpDiscoveryClientPingResponseSerializer());
46+
factory.register((short)5, TcpDiscoveryDiscardMessage::new, new TcpDiscoveryDiscardMessageSerializer());
47+
factory.register((short)6, TcpDiscoveryLoopbackProblemMessage::new, new TcpDiscoveryLoopbackProblemMessageSerializer());
4248
}
4349
}

modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6110,7 +6110,7 @@ private void processMetricsUpdateMessage(TcpDiscoveryMetricsUpdateMessage msg) {
61106110
private void processDiscardMessage(TcpDiscoveryDiscardMessage msg) {
61116111
assert msg != null;
61126112

6113-
IgniteUuid msgId = msg.msgId();
6113+
IgniteUuid msgId = msg.messageId();
61146114

61156115
assert msgId != null;
61166116

modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryAbstractMessage.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,13 @@
2828
import org.apache.ignite.internal.util.tostring.GridToStringInclude;
2929
import org.apache.ignite.internal.util.typedef.internal.S;
3030
import org.apache.ignite.lang.IgniteUuid;
31+
import org.apache.ignite.plugin.extensions.communication.Message;
3132
import org.jetbrains.annotations.Nullable;
3233

3334
/**
3435
* Base class to implement discovery messages.
3536
*/
36-
public abstract class TcpDiscoveryAbstractMessage implements Serializable {
37+
public abstract class TcpDiscoveryAbstractMessage implements Serializable, Message {
3738
/** */
3839
private static final long serialVersionUID = 0L;
3940

@@ -337,4 +338,10 @@ else if (obj instanceof TcpDiscoveryAbstractMessage)
337338
@Override public String toString() {
338339
return S.toString(TcpDiscoveryAbstractMessage.class, this, "isClient", getFlag(CLIENT_FLAG_POS));
339340
}
341+
342+
/** {@inheritDoc} */
343+
// TODO: Remove the method after all inheriting messages switch to using MessageSerializer (IGNITE-25883).
344+
@Override public short directType() {
345+
return -1;
346+
}
340347
}

modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryCheckFailedMessage.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,11 @@
2020
import java.util.UUID;
2121
import org.apache.ignite.internal.Order;
2222
import org.apache.ignite.internal.util.typedef.internal.S;
23-
import org.apache.ignite.plugin.extensions.communication.Message;
2423

2524
/**
2625
* Message telling joining node that it failed coordinator's validation check.
2726
*/
28-
public class TcpDiscoveryCheckFailedMessage extends TcpDiscoveryAbstractMessage implements Message {
27+
public class TcpDiscoveryCheckFailedMessage extends TcpDiscoveryAbstractMessage {
2928
/** */
3029
private static final long serialVersionUID = 0L;
3130

modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryClientPingRequest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,12 @@
2020
import java.util.UUID;
2121
import org.apache.ignite.internal.Order;
2222
import org.apache.ignite.internal.util.typedef.internal.S;
23-
import org.apache.ignite.plugin.extensions.communication.Message;
2423
import org.jetbrains.annotations.Nullable;
2524

2625
/**
2726
* Ping request.
2827
*/
29-
public class TcpDiscoveryClientPingRequest extends TcpDiscoveryAbstractMessage implements Message {
28+
public class TcpDiscoveryClientPingRequest extends TcpDiscoveryAbstractMessage {
3029
/** */
3130
private static final long serialVersionUID = 0L;
3231

modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryClientPingResponse.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,12 @@
2020
import java.util.UUID;
2121
import org.apache.ignite.internal.Order;
2222
import org.apache.ignite.internal.util.typedef.internal.S;
23-
import org.apache.ignite.plugin.extensions.communication.Message;
2423
import org.jetbrains.annotations.Nullable;
2524

2625
/**
2726
* Ping request.
2827
*/
29-
public class TcpDiscoveryClientPingResponse extends TcpDiscoveryAbstractMessage implements Message {
28+
public class TcpDiscoveryClientPingResponse extends TcpDiscoveryAbstractMessage {
3029
/** */
3130
private static final long serialVersionUID = 0L;
3231

modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryDiscardMessage.java

Lines changed: 30 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
package org.apache.ignite.spi.discovery.tcp.messages;
1919

2020
import java.util.UUID;
21+
import org.apache.ignite.internal.Order;
2122
import org.apache.ignite.internal.util.typedef.internal.S;
2223
import org.apache.ignite.lang.IgniteUuid;
2324

@@ -30,10 +31,17 @@ public class TcpDiscoveryDiscardMessage extends TcpDiscoveryAbstractMessage {
3031
private static final long serialVersionUID = 0L;
3132

3233
/** ID of the message to discard (this and all preceding). */
33-
private final IgniteUuid msgId;
34+
@Order(value = 5, method = "messageId")
35+
private IgniteUuid msgId;
3436

3537
/** True if this is discard ID for custom event message. */
36-
private final boolean customMsgDiscard;
38+
@Order(value = 6, method = "customMessageDiscard")
39+
private boolean customMsgDiscard;
40+
41+
/** */
42+
public TcpDiscoveryDiscardMessage() {
43+
// No-op.
44+
}
3745

3846
/**
3947
* Constructor.
@@ -54,10 +62,17 @@ public TcpDiscoveryDiscardMessage(UUID creatorNodeId, IgniteUuid msgId, boolean
5462
*
5563
* @return Message ID.
5664
*/
57-
public IgniteUuid msgId() {
65+
public IgniteUuid messageId() {
5866
return msgId;
5967
}
6068

69+
/**
70+
* @param msgId Message ID.
71+
*/
72+
public void messageId(IgniteUuid msgId) {
73+
this.msgId = msgId;
74+
}
75+
6176
/**
6277
* Flag indicating whether the ID to discard is for a custom message or not.
6378
*
@@ -67,8 +82,20 @@ public boolean customMessageDiscard() {
6782
return customMsgDiscard;
6883
}
6984

85+
/**
86+
* @param customMsgDiscard Custom message flag.
87+
*/
88+
public void customMessageDiscard(boolean customMsgDiscard) {
89+
this.customMsgDiscard = customMsgDiscard;
90+
}
91+
7092
/** {@inheritDoc} */
7193
@Override public String toString() {
7294
return S.toString(TcpDiscoveryDiscardMessage.class, this, "super", super.toString());
7395
}
96+
97+
/** {@inheritDoc} */
98+
@Override public short directType() {
99+
return 5;
100+
}
74101
}

modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryLoopbackProblemMessage.java

Lines changed: 29 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
import java.util.Collection;
2121
import java.util.UUID;
22+
import org.apache.ignite.internal.Order;
2223
import org.apache.ignite.internal.util.typedef.internal.S;
2324

2425
/**
@@ -30,10 +31,17 @@ public class TcpDiscoveryLoopbackProblemMessage extends TcpDiscoveryAbstractMess
3031
private static final long serialVersionUID = 0L;
3132

3233
/** Remote node addresses. */
33-
private final Collection<String> addrs;
34+
@Order(value = 5, method = "addresses")
35+
private Collection<String> addrs;
3436

3537
/** Remote node host names. */
36-
private final Collection<String> hostNames;
38+
@Order(6)
39+
private Collection<String> hostNames;
40+
41+
/** */
42+
public TcpDiscoveryLoopbackProblemMessage() {
43+
// No-op.
44+
}
3745

3846
/**
3947
* Constructor.
@@ -57,15 +65,34 @@ public Collection<String> addresses() {
5765
return addrs;
5866
}
5967

68+
/**
69+
* @param addrs Remote node addresses.
70+
*/
71+
public void addresses(Collection<String> addrs) {
72+
this.addrs = addrs;
73+
}
74+
6075
/**
6176
* @return Remote node host names.
6277
*/
6378
public Collection<String> hostNames() {
6479
return hostNames;
6580
}
6681

82+
/**
83+
* @param hostNames Remote node host names.
84+
*/
85+
public void hostNames(Collection<String> hostNames) {
86+
this.hostNames = hostNames;
87+
}
88+
6789
/** {@inheritDoc} */
6890
@Override public String toString() {
6991
return S.toString(TcpDiscoveryLoopbackProblemMessage.class, this, "super", super.toString());
7092
}
93+
94+
/** {@inheritDoc} */
95+
@Override public short directType() {
96+
return 6;
97+
}
7198
}

modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryPingRequest.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,12 @@
2020
import java.util.UUID;
2121
import org.apache.ignite.internal.Order;
2222
import org.apache.ignite.internal.util.typedef.internal.S;
23-
import org.apache.ignite.plugin.extensions.communication.Message;
2423
import org.jetbrains.annotations.Nullable;
2524

2625
/**
2726
* Ping request.
2827
*/
29-
public class TcpDiscoveryPingRequest extends TcpDiscoveryAbstractMessage implements Message {
28+
public class TcpDiscoveryPingRequest extends TcpDiscoveryAbstractMessage {
3029
/** */
3130
private static final long serialVersionUID = 0L;
3231

modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/messages/TcpDiscoveryPingResponse.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,11 @@
2020
import java.util.UUID;
2121
import org.apache.ignite.internal.Order;
2222
import org.apache.ignite.internal.util.typedef.internal.S;
23-
import org.apache.ignite.plugin.extensions.communication.Message;
2423

2524
/**
2625
* Ping response.
2726
*/
28-
public class TcpDiscoveryPingResponse extends TcpDiscoveryAbstractMessage implements Message {
27+
public class TcpDiscoveryPingResponse extends TcpDiscoveryAbstractMessage {
2928
/** */
3029
private static final long serialVersionUID = 0L;
3130

0 commit comments

Comments
 (0)