This is an automated email from the ASF dual-hosted git repository. timoninmaxim 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 f5385e615e1 IGNITE-26288 Use MessageSerializer for IncrementalSnapshotAwareMessage (#12295) f5385e615e1 is described below commit f5385e615e155297ab6e13b464b3937cdaa78e78 Author: Dmitry Werner <grimekil...@gmail.com> AuthorDate: Tue Aug 26 17:14:51 2025 +0500 IGNITE-26288 Use MessageSerializer for IncrementalSnapshotAwareMessage (#12295) --- .../communication/GridIoMessageFactory.java | 4 +- .../snapshot/IncrementalSnapshotAwareMessage.java | 125 ++++++--------------- 2 files changed, 36 insertions(+), 93 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 75e0c494e68..15554e94f0b 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 @@ -43,6 +43,7 @@ import org.apache.ignite.internal.codegen.GridQueryNextPageRequestSerializer; import org.apache.ignite.internal.codegen.GridTaskCancelRequestSerializer; import org.apache.ignite.internal.codegen.GridTaskResultRequestSerializer; import org.apache.ignite.internal.codegen.IgniteTxKeySerializer; +import org.apache.ignite.internal.codegen.IncrementalSnapshotAwareMessageSerializer; import org.apache.ignite.internal.codegen.JobStealingRequestSerializer; import org.apache.ignite.internal.codegen.LatchAckMessageSerializer; import org.apache.ignite.internal.codegen.MissingMappingRequestMessageSerializer; @@ -360,7 +361,8 @@ public class GridIoMessageFactory implements MessageFactoryProvider { factory.register((short)181, TransactionAttributesAwareRequest::new); // Incremental snapshot. - factory.register(IncrementalSnapshotAwareMessage.TYPE_CODE, IncrementalSnapshotAwareMessage::new); + factory.register(IncrementalSnapshotAwareMessage.TYPE_CODE, IncrementalSnapshotAwareMessage::new, + new IncrementalSnapshotAwareMessageSerializer()); // Index statistics. factory.register(StatisticsKeyMessage.TYPE_CODE, StatisticsKeyMessage::new); diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/snapshot/IncrementalSnapshotAwareMessage.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/snapshot/IncrementalSnapshotAwareMessage.java index fc33a6b04bc..1d40c7125a4 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/snapshot/IncrementalSnapshotAwareMessage.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/snapshot/IncrementalSnapshotAwareMessage.java @@ -17,13 +17,11 @@ package org.apache.ignite.internal.processors.cache.persistence.snapshot; -import java.nio.ByteBuffer; import java.util.UUID; import org.apache.ignite.IgniteCheckedException; +import org.apache.ignite.internal.Order; import org.apache.ignite.internal.processors.cache.GridCacheMessage; import org.apache.ignite.internal.processors.cache.GridCacheSharedContext; -import org.apache.ignite.plugin.extensions.communication.MessageReader; -import org.apache.ignite.plugin.extensions.communication.MessageWriter; import org.jetbrains.annotations.Nullable; /** @@ -34,15 +32,19 @@ public class IncrementalSnapshotAwareMessage extends GridCacheMessage { public static final short TYPE_CODE = 400; /** Original transaction message. */ + @Order(3) private GridCacheMessage payload; /** Incremental snapshot ID. */ + @Order(4) private UUID id; /** ID of the latest incremental snapshot after which this transaction committed. */ + @Order(value = 5, method = "txInrementalSnapshotId") private @Nullable UUID txSnpId; /** Incremental snapshot topology version. */ + @Order(value = 6, method = "snapshotTopologyVersion") private long topVer; /** */ @@ -67,21 +69,49 @@ public class IncrementalSnapshotAwareMessage extends GridCacheMessage { return id; } + /** + * @param id Incremental snapshot ID. + */ + public void id(UUID id) { + this.id = id; + } + /** ID of the latest incremental snapshot after which this transaction committed. */ public UUID txInrementalSnapshotId() { return txSnpId; } + /** + * @param txSnpId ID of the latest incremental snapshot after which this transaction committed. + */ + public void txInrementalSnapshotId(UUID txSnpId) { + this.txSnpId = txSnpId; + } + /** */ public GridCacheMessage payload() { return payload; } + /** + * @param payload Original transaction message. + */ + public void payload(GridCacheMessage payload) { + this.payload = payload; + } + /** @return Incremental snapshot topology version. */ public long snapshotTopologyVersion() { return topVer; } + /** + * @param topVer Incremental snapshot topology version. + */ + public void snapshotTopologyVersion(long topVer) { + this.topVer = topVer; + } + /** {@inheritDoc} */ @Override public void prepareMarshal(GridCacheSharedContext ctx) throws IgniteCheckedException { payload.prepareMarshal(ctx); @@ -92,95 +122,6 @@ public class IncrementalSnapshotAwareMessage extends GridCacheMessage { payload.finishUnmarshal(ctx, ldr); } - /** {@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 3: - if (!writer.writeUuid(id)) - return false; - - writer.incrementState(); - - case 4: - if (!writer.writeMessage(payload)) - return false; - - writer.incrementState(); - - case 5: - if (!writer.writeLong(topVer)) - return false; - - writer.incrementState(); - - case 6: - if (!writer.writeUuid(txSnpId)) - return false; - - writer.incrementState(); - - } - - return true; - } - - /** {@inheritDoc} */ - @Override public boolean readFrom(ByteBuffer buf, MessageReader reader) { - reader.setBuffer(buf); - - if (!super.readFrom(buf, reader)) - return false; - - switch (reader.state()) { - case 3: - id = reader.readUuid(); - - if (!reader.isLastRead()) - return false; - - reader.incrementState(); - - case 4: - payload = reader.readMessage(); - - if (!reader.isLastRead()) - return false; - - reader.incrementState(); - - case 5: - topVer = reader.readLong(); - - if (!reader.isLastRead()) - return false; - - reader.incrementState(); - - case 6: - txSnpId = reader.readUuid(); - - if (!reader.isLastRead()) - return false; - - reader.incrementState(); - - } - - return true; - } - /** {@inheritDoc} */ @Override public short directType() { return TYPE_CODE;