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 da734cb8db9 IGNITE-26062 Use MessageSerializer for
GridCacheTxRecoveryRequest and GridCacheTxRecoveryResponse (#12236)
da734cb8db9 is described below
commit da734cb8db90db517f95ee6a7e08f4ec827eb859
Author: Dmitry Werner <[email protected]>
AuthorDate: Tue Sep 23 14:25:50 2025 +0500
IGNITE-26062 Use MessageSerializer for GridCacheTxRecoveryRequest and
GridCacheTxRecoveryResponse (#12236)
---
.../communication/GridIoMessageFactory.java | 6 +-
.../distributed/GridCacheTxRecoveryRequest.java | 169 ++++++---------------
.../distributed/GridCacheTxRecoveryResponse.java | 105 +++----------
3 files changed, 78 insertions(+), 202 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 74275da5382..fc9455664ce 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
@@ -32,6 +32,8 @@ import
org.apache.ignite.internal.codegen.CacheVersionedValueSerializer;
import
org.apache.ignite.internal.codegen.GenerateEncryptionKeyRequestSerializer;
import org.apache.ignite.internal.codegen.GridCacheEntryInfoSerializer;
import org.apache.ignite.internal.codegen.GridCacheSqlQuerySerializer;
+import org.apache.ignite.internal.codegen.GridCacheTxRecoveryRequestSerializer;
+import
org.apache.ignite.internal.codegen.GridCacheTxRecoveryResponseSerializer;
import org.apache.ignite.internal.codegen.GridCacheVersionExSerializer;
import org.apache.ignite.internal.codegen.GridCacheVersionSerializer;
import org.apache.ignite.internal.codegen.GridCheckpointRequestSerializer;
@@ -257,8 +259,8 @@ public class GridIoMessageFactory implements
MessageFactoryProvider {
factory.register((short)11, GridDeploymentRequest::new);
factory.register((short)12, GridDeploymentResponse::new, new
GridDeploymentResponseSerializer());
factory.register((short)13, GridEventStorageMessage::new);
- factory.register((short)16, GridCacheTxRecoveryRequest::new);
- factory.register((short)17, GridCacheTxRecoveryResponse::new);
+ factory.register((short)16, GridCacheTxRecoveryRequest::new, new
GridCacheTxRecoveryRequestSerializer());
+ factory.register((short)17, GridCacheTxRecoveryResponse::new, new
GridCacheTxRecoveryResponseSerializer());
factory.register((short)20, GridCacheTtlUpdateRequest::new);
factory.register((short)21, GridDistributedLockRequest::new);
factory.register((short)22, GridDistributedLockResponse::new);
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheTxRecoveryRequest.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheTxRecoveryRequest.java
index ed1aa48f298..53801551afe 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheTxRecoveryRequest.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheTxRecoveryRequest.java
@@ -17,36 +17,40 @@
package org.apache.ignite.internal.processors.cache.distributed;
-import java.nio.ByteBuffer;
import org.apache.ignite.IgniteLogger;
+import org.apache.ignite.internal.Order;
import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
import
org.apache.ignite.internal.processors.cache.transactions.IgniteInternalTx;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.lang.IgniteUuid;
-import org.apache.ignite.plugin.extensions.communication.MessageReader;
-import org.apache.ignite.plugin.extensions.communication.MessageWriter;
/**
* Message sent to check that transactions related to transaction were
prepared on remote node.
*/
public class GridCacheTxRecoveryRequest extends GridDistributedBaseMessage {
/** Future ID. */
+ @Order(value = 7, method = "futureId")
private IgniteUuid futId;
/** Mini future ID. */
+ @Order(8)
private IgniteUuid miniId;
/** Near transaction ID. */
+ @Order(value = 9, method = "nearXidVersion")
private GridCacheVersion nearXidVer;
/** Expected number of transactions on node. */
+ @Order(value = 10, method = "transactions")
private int txNum;
/** System transaction flag. */
+ @Order(value = 11, method = "system")
private boolean sys;
/** {@code True} if should check only tx on near node. */
+ @Order(12)
private boolean nearTxCheck;
/**
@@ -89,6 +93,13 @@ public class GridCacheTxRecoveryRequest extends
GridDistributedBaseMessage {
return nearTxCheck;
}
+ /**
+ * @param nearTxCheck {@code True} if should check only tx on near node.
+ */
+ public void nearTxCheck(boolean nearTxCheck) {
+ this.nearTxCheck = nearTxCheck;
+ }
+
/**
* @return Near version.
*/
@@ -96,6 +107,13 @@ public class GridCacheTxRecoveryRequest extends
GridDistributedBaseMessage {
return nearXidVer;
}
+ /**
+ * @param nearXidVer Near version.
+ */
+ public void nearXidVersion(GridCacheVersion nearXidVer) {
+ this.nearXidVer = nearXidVer;
+ }
+
/**
* @return Future ID.
*/
@@ -103,6 +121,13 @@ public class GridCacheTxRecoveryRequest extends
GridDistributedBaseMessage {
return futId;
}
+ /**
+ * @param futId Future ID.
+ */
+ public void futureId(IgniteUuid futId) {
+ this.futId = futId;
+ }
+
/**
* @return Mini future ID.
*/
@@ -110,6 +135,13 @@ public class GridCacheTxRecoveryRequest extends
GridDistributedBaseMessage {
return miniId;
}
+ /**
+ * @param miniId Mini future ID.
+ */
+ public void miniId(IgniteUuid miniId) {
+ this.miniId = miniId;
+ }
+
/**
* @return Expected number of transactions on node.
*/
@@ -117,6 +149,13 @@ public class GridCacheTxRecoveryRequest extends
GridDistributedBaseMessage {
return txNum;
}
+ /**
+ * @param txNum Expected number of transactions on node.
+ */
+ public void transactions(int txNum) {
+ this.txNum = txNum;
+ }
+
/**
* @return System transaction flag.
*/
@@ -124,126 +163,16 @@ public class GridCacheTxRecoveryRequest extends
GridDistributedBaseMessage {
return sys;
}
- /** {@inheritDoc} */
- @Override public IgniteLogger messageLogger(GridCacheSharedContext<?, ?>
ctx) {
- return ctx.txRecoveryMessageLogger();
- }
-
- /** {@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 7:
- if (!writer.writeIgniteUuid(futId))
- return false;
-
- writer.incrementState();
-
- case 8:
- if (!writer.writeIgniteUuid(miniId))
- return false;
-
- writer.incrementState();
-
- case 9:
- if (!writer.writeBoolean(nearTxCheck))
- return false;
-
- writer.incrementState();
-
- case 10:
- if (!writer.writeMessage(nearXidVer))
- return false;
-
- writer.incrementState();
-
- case 11:
- if (!writer.writeBoolean(sys))
- return false;
-
- writer.incrementState();
-
- case 12:
- if (!writer.writeInt(txNum))
- return false;
-
- writer.incrementState();
-
- }
-
- return true;
+ /**
+ * @param sys System transaction flag.
+ */
+ public void system(boolean sys) {
+ this.sys = sys;
}
/** {@inheritDoc} */
- @Override public boolean readFrom(ByteBuffer buf, MessageReader reader) {
- reader.setBuffer(buf);
-
- if (!super.readFrom(buf, reader))
- return false;
-
- switch (reader.state()) {
- case 7:
- futId = reader.readIgniteUuid();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 8:
- miniId = reader.readIgniteUuid();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 9:
- nearTxCheck = reader.readBoolean();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 10:
- nearXidVer = reader.readMessage();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 11:
- sys = reader.readBoolean();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 12:
- txNum = reader.readInt();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- }
-
- return true;
+ @Override public IgniteLogger messageLogger(GridCacheSharedContext<?, ?>
ctx) {
+ return ctx.txRecoveryMessageLogger();
}
/** {@inheritDoc} */
diff --git
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheTxRecoveryResponse.java
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheTxRecoveryResponse.java
index 803d40a842d..4409185b823 100644
---
a/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheTxRecoveryResponse.java
+++
b/modules/core/src/main/java/org/apache/ignite/internal/processors/cache/distributed/GridCacheTxRecoveryResponse.java
@@ -17,33 +17,32 @@
package org.apache.ignite.internal.processors.cache.distributed;
-import java.nio.ByteBuffer;
import org.apache.ignite.IgniteLogger;
-import org.apache.ignite.internal.GridDirectTransient;
+import org.apache.ignite.internal.Order;
import org.apache.ignite.internal.processors.cache.GridCacheSharedContext;
import org.apache.ignite.internal.processors.cache.transactions.IgniteTxState;
import
org.apache.ignite.internal.processors.cache.transactions.IgniteTxStateAware;
import org.apache.ignite.internal.processors.cache.version.GridCacheVersion;
import org.apache.ignite.internal.util.typedef.internal.S;
import org.apache.ignite.lang.IgniteUuid;
-import org.apache.ignite.plugin.extensions.communication.MessageReader;
-import org.apache.ignite.plugin.extensions.communication.MessageWriter;
/**
* Transactions recovery check response.
*/
public class GridCacheTxRecoveryResponse extends GridDistributedBaseMessage
implements IgniteTxStateAware {
/** Future ID. */
+ @Order(value = 7, method = "futureId")
private IgniteUuid futId;
/** Mini future ID. */
+ @Order(8)
private IgniteUuid miniId;
/** Flag indicating if all remote transactions were prepared. */
+ @Order(9)
private boolean success;
/** Transient TX state. */
- @GridDirectTransient
private IgniteTxState txState;
/**
@@ -81,6 +80,13 @@ public class GridCacheTxRecoveryResponse extends
GridDistributedBaseMessage impl
return futId;
}
+ /**
+ * @param futId Future ID.
+ */
+ public void futureId(IgniteUuid futId) {
+ this.futId = futId;
+ }
+
/**
* @return Mini future ID.
*/
@@ -88,6 +94,13 @@ public class GridCacheTxRecoveryResponse extends
GridDistributedBaseMessage impl
return miniId;
}
+ /**
+ * @param miniId Mini future ID.
+ */
+ public void miniId(IgniteUuid miniId) {
+ this.miniId = miniId;
+ }
+
/**
* @return {@code True} if all remote transactions were prepared.
*/
@@ -95,6 +108,13 @@ public class GridCacheTxRecoveryResponse extends
GridDistributedBaseMessage impl
return success;
}
+ /**
+ * @param success {@code True} if all remote transactions were prepared.
+ */
+ public void success(boolean success) {
+ this.success = success;
+ }
+
/** {@inheritDoc} */
@Override public IgniteTxState txState() {
return txState;
@@ -110,81 +130,6 @@ public class GridCacheTxRecoveryResponse extends
GridDistributedBaseMessage impl
return ctx.txRecoveryMessageLogger();
}
- /** {@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 7:
- if (!writer.writeIgniteUuid(futId))
- return false;
-
- writer.incrementState();
-
- case 8:
- if (!writer.writeIgniteUuid(miniId))
- return false;
-
- writer.incrementState();
-
- case 9:
- if (!writer.writeBoolean(success))
- 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 7:
- futId = reader.readIgniteUuid();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 8:
- miniId = reader.readIgniteUuid();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- case 9:
- success = reader.readBoolean();
-
- if (!reader.isLastRead())
- return false;
-
- reader.incrementState();
-
- }
-
- return true;
- }
-
/** {@inheritDoc} */
@Override public short directType() {
return 17;