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 3ff34608804 IGNITE-25964 Use MessageSerializer for 
GridCacheGroupIdMessage (#12325)
3ff34608804 is described below

commit 3ff346088048f2c1463dcc0c3639d7d607be296b
Author: Denis <[email protected]>
AuthorDate: Fri Sep 19 16:30:22 2025 +1000

    IGNITE-25964 Use MessageSerializer for GridCacheGroupIdMessage (#12325)
---
 .../communication/GridIoMessageFactory.java        |   3 +-
 .../processors/cache/GridCacheGroupIdMessage.java  |  11 +++
 .../dht/GridDhtAffinityAssignmentRequest.java      | 110 ++++++---------------
 3 files changed, 45 insertions(+), 79 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 3f0d245b619..26eb674fec1 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
@@ -35,6 +35,7 @@ import 
org.apache.ignite.internal.codegen.GridCacheVersionExSerializer;
 import org.apache.ignite.internal.codegen.GridCacheVersionSerializer;
 import org.apache.ignite.internal.codegen.GridCheckpointRequestSerializer;
 import org.apache.ignite.internal.codegen.GridDeploymentResponseSerializer;
+import 
org.apache.ignite.internal.codegen.GridDhtAffinityAssignmentRequestSerializer;
 import org.apache.ignite.internal.codegen.GridDhtPartitionExchangeIdSerializer;
 import 
org.apache.ignite.internal.codegen.GridDhtPartitionsSingleRequestSerializer;
 import 
org.apache.ignite.internal.codegen.GridDhtTxOnePhaseCommitAckRequestSerializer;
@@ -265,7 +266,7 @@ public class GridIoMessageFactory implements 
MessageFactoryProvider {
         factory.register((short)25, GridDistributedTxPrepareRequest::new, new 
GridDistributedTxPrepareRequestSerializer());
         factory.register((short)26, GridDistributedTxPrepareResponse::new);
         factory.register((short)27, GridDistributedUnlockRequest::new);
-        factory.register((short)28, GridDhtAffinityAssignmentRequest::new);
+        factory.register((short)28, GridDhtAffinityAssignmentRequest::new, new 
GridDhtAffinityAssignmentRequestSerializer());
         factory.register((short)29, GridDhtAffinityAssignmentResponse::new);
         factory.register((short)30, GridDhtLockRequest::new);
         factory.register((short)31, GridDhtLockResponse::new);
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheGroupIdMessage.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheGroupIdMessage.java
index cbadda76a8a..114b1982e5e 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheGroupIdMessage.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/GridCacheGroupIdMessage.java
@@ -18,6 +18,7 @@
 package org.apache.ignite.internal.processors.cache;
 
 import java.nio.ByteBuffer;
+import org.apache.ignite.internal.Order;
 import org.apache.ignite.internal.util.tostring.GridToStringInclude;
 import org.apache.ignite.internal.util.typedef.internal.S;
 import org.apache.ignite.plugin.extensions.communication.MessageReader;
@@ -29,6 +30,7 @@ import 
org.apache.ignite.plugin.extensions.communication.MessageWriter;
 public abstract class GridCacheGroupIdMessage extends GridCacheMessage {
     /** Cache group ID. */
     @GridToStringInclude
+    @Order(value = 3, method = "groupId")
     protected int grpId;
 
     /**
@@ -38,6 +40,13 @@ public abstract class GridCacheGroupIdMessage extends 
GridCacheMessage {
         return grpId;
     }
 
+    /**
+     * @param grpId Cache group ID.
+     */
+    public void groupId(int grpId) {
+        this.grpId = grpId;
+    }
+
     /** {@inheritDoc} */
     @Override public boolean cacheGroupMessage() {
         return true;
@@ -50,6 +59,7 @@ public abstract class GridCacheGroupIdMessage extends 
GridCacheMessage {
 
     /** {@inheritDoc} */
     @Override public boolean writeTo(ByteBuffer buf, MessageWriter writer) {
+        // TODO: Safe to remove only after all inheritors have migrated to the 
new ser/der scheme (IGNITE-25490).
         writer.setBuffer(buf);
 
         if (!super.writeTo(buf, writer))
@@ -76,6 +86,7 @@ public abstract class GridCacheGroupIdMessage extends 
GridCacheMessage {
 
     /** {@inheritDoc} */
     @Override public boolean readFrom(ByteBuffer buf, MessageReader reader) {
+        // TODO: Safe to remove only after all inheritors have migrated to the 
new ser/der scheme (IGNITE-25490).
         reader.setBuffer(buf);
 
         if (!super.readFrom(buf, reader))
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtAffinityAssignmentRequest.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtAffinityAssignmentRequest.java
index c45be01654a..ae3f39fce4b 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtAffinityAssignmentRequest.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/dht/GridDhtAffinityAssignmentRequest.java
@@ -17,12 +17,10 @@
 
 package org.apache.ignite.internal.processors.cache.distributed.dht;
 
-import java.nio.ByteBuffer;
+import org.apache.ignite.internal.Order;
 import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion;
 import org.apache.ignite.internal.processors.cache.GridCacheGroupIdMessage;
 import org.apache.ignite.internal.util.typedef.internal.S;
-import org.apache.ignite.plugin.extensions.communication.MessageReader;
-import org.apache.ignite.plugin.extensions.communication.MessageWriter;
 
 /**
  * Affinity assignment request.
@@ -32,12 +30,15 @@ public class GridDhtAffinityAssignmentRequest extends 
GridCacheGroupIdMessage {
     private static final int SND_PART_STATE_MASK = 0x01;
 
     /** */
+    @Order(4)
     private byte flags;
 
     /** */
+    @Order(value = 5, method = "futureId")
     private long futId;
 
     /** Topology version being queried. */
+    @Order(value = 6, method = "topologyVersion")
     private AffinityTopologyVersion topVer;
 
     /**
@@ -68,6 +69,20 @@ public class GridDhtAffinityAssignmentRequest extends 
GridCacheGroupIdMessage {
             flags |= SND_PART_STATE_MASK;
     }
 
+    /**
+     * @return Flags.
+     */
+    public byte flags() {
+        return flags;
+    }
+
+    /**
+     * @param flags Flags.
+     */
+    public void flags(byte flags) {
+        this.flags = flags;
+    }
+
     /**
      * @return {@code True} if need send in response cache partitions state.
      */
@@ -82,6 +97,13 @@ public class GridDhtAffinityAssignmentRequest extends 
GridCacheGroupIdMessage {
         return futId;
     }
 
+    /**
+     * @param futId Future ID.
+     */
+    public void futureId(long futId) {
+        this.futId = futId;
+    }
+
     /** {@inheritDoc} */
     @Override public boolean addDeploymentInfo() {
         return false;
@@ -99,84 +121,16 @@ public class GridDhtAffinityAssignmentRequest extends 
GridCacheGroupIdMessage {
         return topVer;
     }
 
-    /** {@inheritDoc} */
-    @Override public short directType() {
-        return 28;
-    }
-
-    /** {@inheritDoc} */
-    @Override public boolean writeTo(ByteBuffer buf, MessageWriter writer) {
-        writer.setBuffer(buf);
-
-        if (!super.writeTo(buf, writer))
-            return false;
-
-        if (!writer.isHeaderWritten()) {
-            if (!writer.writeHeader(directType()))
-                return false;
-
-            writer.onHeaderWritten();
-        }
-
-        switch (writer.state()) {
-            case 4:
-                if (!writer.writeByte(flags))
-                    return false;
-
-                writer.incrementState();
-
-            case 5:
-                if (!writer.writeLong(futId))
-                    return false;
-
-                writer.incrementState();
-
-            case 6:
-                if (!writer.writeAffinityTopologyVersion(topVer))
-                    return false;
-
-                writer.incrementState();
-
-        }
-
-        return true;
+    /**
+     * @param topVer Requested topology version.
+     */
+    public void topologyVersion(AffinityTopologyVersion topVer) {
+        this.topVer = topVer;
     }
 
     /** {@inheritDoc} */
-    @Override public boolean readFrom(ByteBuffer buf, MessageReader reader) {
-        reader.setBuffer(buf);
-
-        if (!super.readFrom(buf, reader))
-            return false;
-
-        switch (reader.state()) {
-            case 4:
-                flags = reader.readByte();
-
-                if (!reader.isLastRead())
-                    return false;
-
-                reader.incrementState();
-
-            case 5:
-                futId = reader.readLong();
-
-                if (!reader.isLastRead())
-                    return false;
-
-                reader.incrementState();
-
-            case 6:
-                topVer = reader.readAffinityTopologyVersion();
-
-                if (!reader.isLastRead())
-                    return false;
-
-                reader.incrementState();
-
-        }
-
-        return true;
+    @Override public short directType() {
+        return 28;
     }
 
     /** {@inheritDoc} */

Reply via email to