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 <[email protected]>
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;