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 1adad688583 IGNITE-27927 Use MessageSerializer for GridIoUserMessage
(#12781)
1adad688583 is described below
commit 1adad688583b4d194d6cbb32e5da76b15dc6faa3
Author: Dmitry Werner <[email protected]>
AuthorDate: Tue Feb 24 12:40:30 2026 +0500
IGNITE-27927 Use MessageSerializer for GridIoUserMessage (#12781)
---
.../communication/GridIoMessageFactory.java | 2 +-
.../managers/communication/GridIoUserMessage.java | 161 ++-------------------
2 files changed, 16 insertions(+), 147 deletions(-)
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
index 35602626a15..82782d56a74 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoMessageFactory.java
@@ -369,7 +369,7 @@ public class GridIoMessageFactory implements
MessageFactoryProvider {
factory.register((short)6, GridTaskSessionRequest::new, new
GridTaskSessionRequestSerializer());
factory.register((short)7, GridCheckpointRequest::new, new
GridCheckpointRequestSerializer());
factory.register((short)8, GridIoMessage::new, new
GridIoMessageSerializer());
- factory.register((short)9, GridIoUserMessage::new);
+ factory.register((short)9, GridIoUserMessage::new, new
GridIoUserMessageSerializer());
factory.register((short)10, GridDeploymentInfoBean::new);
factory.register((short)11, GridDeploymentRequest::new, new
GridDeploymentRequestSerializer());
factory.register((short)12, GridDeploymentResponse::new, new
GridDeploymentResponseSerializer());
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoUserMessage.java
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoUserMessage.java
index 89cca69737d..46338092b34 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoUserMessage.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/managers/communication/GridIoUserMessage.java
@@ -17,21 +17,16 @@
package org.apache.ignite.internal.managers.communication;
-import java.nio.ByteBuffer;
import java.util.Collections;
import java.util.Map;
import java.util.UUID;
import org.apache.ignite.configuration.DeploymentMode;
-import org.apache.ignite.internal.GridDirectMap;
-import org.apache.ignite.internal.GridDirectTransient;
+import org.apache.ignite.internal.Order;
import org.apache.ignite.internal.managers.deployment.GridDeployment;
import org.apache.ignite.internal.util.tostring.GridToStringInclude;
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.apache.ignite.plugin.extensions.communication.MessageCollectionItemType;
-import org.apache.ignite.plugin.extensions.communication.MessageReader;
-import org.apache.ignite.plugin.extensions.communication.MessageWriter;
import org.jetbrains.annotations.Nullable;
/**
@@ -39,38 +34,41 @@ import org.jetbrains.annotations.Nullable;
*/
public class GridIoUserMessage implements Message {
/** Message body. */
- @GridDirectTransient
private Object body;
/** Serialized message body. */
- private byte[] bodyBytes;
+ @Order(0)
+ byte[] bodyBytes;
/** Class loader ID. */
- private IgniteUuid clsLdrId;
+ @Order(1)
+ IgniteUuid clsLdrId;
/** Message topic. */
- @GridDirectTransient
private Object topic;
/** Serialized message topic. */
- private byte[] topicBytes;
+ @Order(2)
+ byte[] topicBytes;
/** Deployment mode. */
- private DeploymentMode depMode;
+ @Order(3)
+ DeploymentMode depMode;
/** Deployment class name. */
- private String depClsName;
+ @Order(4)
+ String depClsName;
/** User version. */
- private String userVer;
+ @Order(5)
+ String userVer;
/** Node class loader participants. */
+ @Order(6)
@GridToStringInclude
- @GridDirectMap(keyType = UUID.class, valueType = IgniteUuid.class)
- private Map<UUID, IgniteUuid> ldrParties;
+ Map<UUID, IgniteUuid> ldrParties;
/** Message deployment. */
- @GridDirectTransient
private GridDeployment dep;
/**
@@ -203,135 +201,6 @@ public class GridIoUserMessage implements Message {
return dep;
}
- /** {@inheritDoc} */
- @Override public boolean writeTo(ByteBuffer buf, MessageWriter writer) {
- writer.setBuffer(buf);
-
- if (!writer.isHeaderWritten()) {
- if (!writer.writeHeader(directType()))
- return false;
-
- writer.onHeaderWritten();
- }
-
- switch (writer.state()) {
- case 0:
- if (!writer.writeByteArray(bodyBytes))
- return false;
-
- writer.incrementState();
-
- case 1:
- if (!writer.writeIgniteUuid(clsLdrId))
- return false;
-
- writer.incrementState();
-
- case 2:
- if (!writer.writeString(depClsName))
- return false;
-
- writer.incrementState();
-
- case 3:
- if (!writer.writeByte(depMode != null ?
(byte)depMode.ordinal() : -1))
- return false;
-
- writer.incrementState();
-
- case 4:
- if (!writer.writeMap(ldrParties,
MessageCollectionItemType.UUID, MessageCollectionItemType.IGNITE_UUID))
- return false;
-
- writer.incrementState();
-
- case 5:
- if (!writer.writeByteArray(topicBytes))
- return false;
-
- writer.incrementState();
-
- case 6:
- if (!writer.writeString(userVer))
- return false;
-
- writer.incrementState();
-
- }
-
- return true;
- }
-
- /** {@inheritDoc} */
- @Override public boolean readFrom(ByteBuffer buf, MessageReader reader) {
- reader.setBuffer(buf);
-
- switch (reader.state()) {
- case 0:
- bodyBytes = reader.readByteArray();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 1:
- clsLdrId = reader.readIgniteUuid();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 2:
- depClsName = reader.readString();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 3:
- byte depModeOrd;
-
- depModeOrd = reader.readByte();
-
- if (!reader.isLastRead())
- return false;
-
- depMode = DeploymentMode.fromOrdinal(depModeOrd);
-
- reader.incrementState();
-
- case 4:
- ldrParties = reader.readMap(MessageCollectionItemType.UUID,
MessageCollectionItemType.IGNITE_UUID, false);
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 5:
- topicBytes = reader.readByteArray();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 6:
- userVer = reader.readString();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- }
-
- return true;
- }
-
/** {@inheritDoc} */
@Override public short directType() {
return 9;