This is an automated email from the ASF dual-hosted git repository.

tkalkirill pushed a commit to branch ignite-25732
in repository https://gitbox.apache.org/repos/asf/ignite-3.git

commit 96558b47385c2ce52d7ea63ccd7eaf37377a5c63
Author: Kirill Tkalenko <tkalkir...@yandex.ru>
AuthorDate: Fri Jun 27 12:00:36 2025 +0300

    IGNITE-25732 wip
---
 .../handlers/TxFinishReplicaRequestHandler.java    |  4 ++--
 .../network/PartitionReplicationMessageGroup.java  | 14 ++++++++---
 .../network/command/FinishTxCommand.java           | 10 +-------
 ...FinishTxCommand.java => FinishTxCommandV1.java} | 26 +++++++-------------
 ...FinishTxCommand.java => FinishTxCommandV2.java} | 20 ++++------------
 .../replicator/raft/ZonePartitionRaftListener.java |  2 +-
 .../raft/handlers/FinishTxCommandHandler.java      | 28 +++++++++++++++++++++-
 .../raft/ZonePartitionRaftListenerTest.java        |  4 ++--
 .../table/distributed/raft/PartitionListener.java  | 14 ++++++++---
 .../PartitionRaftCommandsSerializationTest.java    |  9 +++----
 .../raft/PartitionCommandListenerTest.java         |  4 ++--
 .../PartitionCommandsMarshallerImplTest.java       |  8 +++----
 12 files changed, 79 insertions(+), 64 deletions(-)

diff --git 
a/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/handlers/TxFinishReplicaRequestHandler.java
 
b/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/handlers/TxFinishReplicaRequestHandler.java
index 01fa170cddd..b94048df146 100644
--- 
a/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/handlers/TxFinishReplicaRequestHandler.java
+++ 
b/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/handlers/TxFinishReplicaRequestHandler.java
@@ -44,7 +44,7 @@ import 
org.apache.ignite.internal.partition.replicator.ReliableCatalogVersions;
 import org.apache.ignite.internal.partition.replicator.ReplicaTxFinishMarker;
 import 
org.apache.ignite.internal.partition.replicator.ReplicationRaftCommandApplicator;
 import 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessagesFactory;
-import 
org.apache.ignite.internal.partition.replicator.network.command.FinishTxCommandBuilder;
+import 
org.apache.ignite.internal.partition.replicator.network.command.FinishTxCommandV2Builder;
 import 
org.apache.ignite.internal.partition.replicator.raft.UnexpectedTransactionStateException;
 import 
org.apache.ignite.internal.partition.replicator.schema.ValidationSchemasSource;
 import 
org.apache.ignite.internal.partition.replicator.schemacompat.CompatValidationResult;
@@ -316,7 +316,7 @@ public class TxFinishReplicaRequestHandler {
             List<EnlistedPartitionGroupMessage> enlistedPartitions
     ) {
         HybridTimestamp now = clockService.now();
-        FinishTxCommandBuilder finishTxCmdBldr = 
PARTITION_REPLICATION_MESSAGES_FACTORY.finishTxCommand()
+        FinishTxCommandV2Builder finishTxCmdBldr = 
PARTITION_REPLICATION_MESSAGES_FACTORY.finishTxCommandV2()
                 .txId(transactionId)
                 .commit(commit)
                 .initiatorTime(now)
diff --git 
a/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/PartitionReplicationMessageGroup.java
 
b/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/PartitionReplicationMessageGroup.java
index 5c5dd673a04..87373e7e836 100644
--- 
a/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/PartitionReplicationMessageGroup.java
+++ 
b/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/PartitionReplicationMessageGroup.java
@@ -22,7 +22,8 @@ import static 
org.apache.ignite.internal.partition.replicator.network.PartitionR
 import org.apache.ignite.internal.network.annotations.MessageGroup;
 import 
org.apache.ignite.internal.partition.replicator.network.command.BuildIndexCommand;
 import 
org.apache.ignite.internal.partition.replicator.network.command.BuildIndexCommandV2;
-import 
org.apache.ignite.internal.partition.replicator.network.command.FinishTxCommand;
+import 
org.apache.ignite.internal.partition.replicator.network.command.FinishTxCommandV1;
+import 
org.apache.ignite.internal.partition.replicator.network.command.FinishTxCommandV2;
 import 
org.apache.ignite.internal.partition.replicator.network.command.TimedBinaryRowMessage;
 import 
org.apache.ignite.internal.partition.replicator.network.command.UpdateAllCommand;
 import 
org.apache.ignite.internal.partition.replicator.network.command.UpdateAllCommandV2;
@@ -220,8 +221,12 @@ public interface PartitionReplicationMessageGroup {
      * <p>NOTE: Commands must be immutable because they will be stored in the 
replication log.</p>
      */
     interface Commands {
-        /** Message type for {@link FinishTxCommand}. */
-        short FINISH_TX = 40;
+        /**
+         * Message type for {@link FinishTxCommandV1}.
+         *
+         * @see #FINISH_TX_V2
+         */
+        short FINISH_TX_V1 = 40;
 
         /**
          * Message type for {@link WriteIntentSwitchCommand} for 
non-collocated distribution zones.
@@ -265,6 +270,9 @@ public interface PartitionReplicationMessageGroup {
 
         /** Message type for {@link BuildIndexCommandV2}. */
         short BUILD_INDEX_V2 = 49;
+
+        /** Message type for {@link FinishTxCommandV2}. */
+        short FINISH_TX_V2 = 50;
     }
 
     /**
diff --git 
a/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/command/FinishTxCommand.java
 
b/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/command/FinishTxCommand.java
index 8f57a4212b6..d698c4ee08d 100644
--- 
a/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/command/FinishTxCommand.java
+++ 
b/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/command/FinishTxCommand.java
@@ -17,17 +17,12 @@
 
 package org.apache.ignite.internal.partition.replicator.network.command;
 
-import java.util.List;
 import org.apache.ignite.internal.hlc.HybridTimestamp;
-import org.apache.ignite.internal.network.annotations.Transferable;
-import 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessageGroup;
-import org.apache.ignite.internal.tx.message.EnlistedPartitionGroupMessage;
 import org.jetbrains.annotations.Nullable;
 
 /**
- * State machine command to finish a transaction on a commit or a rollback.
+ * Base state machine command to finish a transaction on a commit or a 
rollback.
  */
-@Transferable(PartitionReplicationMessageGroup.Commands.FINISH_TX)
 public interface FinishTxCommand extends PartitionCommand {
     /**
      * Returns a commit or a rollback state.
@@ -36,7 +31,4 @@ public interface FinishTxCommand extends PartitionCommand {
 
     /** Transaction commit timestamp. */
     @Nullable HybridTimestamp commitTimestamp();
-
-    /** Returns ordered partitions. */
-    List<EnlistedPartitionGroupMessage> partitions();
 }
diff --git 
a/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/command/FinishTxCommand.java
 
b/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/command/FinishTxCommandV1.java
similarity index 60%
copy from 
modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/command/FinishTxCommand.java
copy to 
modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/command/FinishTxCommandV1.java
index 8f57a4212b6..b01b603b2c6 100644
--- 
a/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/command/FinishTxCommand.java
+++ 
b/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/command/FinishTxCommandV1.java
@@ -18,25 +18,17 @@
 package org.apache.ignite.internal.partition.replicator.network.command;
 
 import java.util.List;
-import org.apache.ignite.internal.hlc.HybridTimestamp;
 import org.apache.ignite.internal.network.annotations.Transferable;
-import 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessageGroup;
-import org.apache.ignite.internal.tx.message.EnlistedPartitionGroupMessage;
-import org.jetbrains.annotations.Nullable;
+import 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessageGroup.Commands;
+import org.apache.ignite.internal.replicator.message.TablePartitionIdMessage;
 
 /**
- * State machine command to finish a transaction on a commit or a rollback.
+ * Extension of {@link FinishTxCommand} with old fields to support backward 
compatibility.
+ *
+ * <p>This command is replaced with {@link FinishTxCommandV2} and only exists 
in the source code for backward compatibility.</p>
  */
-@Transferable(PartitionReplicationMessageGroup.Commands.FINISH_TX)
-public interface FinishTxCommand extends PartitionCommand {
-    /**
-     * Returns a commit or a rollback state.
-     */
-    boolean commit();
-
-    /** Transaction commit timestamp. */
-    @Nullable HybridTimestamp commitTimestamp();
-
-    /** Returns ordered partitions. */
-    List<EnlistedPartitionGroupMessage> partitions();
+@Transferable(Commands.FINISH_TX_V1)
+public interface FinishTxCommandV1 extends FinishTxCommand {
+    /** Returns ordered replication groups IDs. */
+    List<TablePartitionIdMessage> partitionIds();
 }
diff --git 
a/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/command/FinishTxCommand.java
 
b/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/command/FinishTxCommandV2.java
similarity index 69%
copy from 
modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/command/FinishTxCommand.java
copy to 
modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/command/FinishTxCommandV2.java
index 8f57a4212b6..32d1c6818c8 100644
--- 
a/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/command/FinishTxCommand.java
+++ 
b/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/network/command/FinishTxCommandV2.java
@@ -18,25 +18,13 @@
 package org.apache.ignite.internal.partition.replicator.network.command;
 
 import java.util.List;
-import org.apache.ignite.internal.hlc.HybridTimestamp;
 import org.apache.ignite.internal.network.annotations.Transferable;
-import 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessageGroup;
+import 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessageGroup.Commands;
 import org.apache.ignite.internal.tx.message.EnlistedPartitionGroupMessage;
-import org.jetbrains.annotations.Nullable;
-
-/**
- * State machine command to finish a transaction on a commit or a rollback.
- */
-@Transferable(PartitionReplicationMessageGroup.Commands.FINISH_TX)
-public interface FinishTxCommand extends PartitionCommand {
-    /**
-     * Returns a commit or a rollback state.
-     */
-    boolean commit();
-
-    /** Transaction commit timestamp. */
-    @Nullable HybridTimestamp commitTimestamp();
 
+/** Extension of {@link FinishTxCommand} with new fields to support backward 
compatibility. */
+@Transferable(Commands.FINISH_TX_V2)
+public interface FinishTxCommandV2 extends FinishTxCommand {
     /** Returns ordered partitions. */
     List<EnlistedPartitionGroupMessage> partitions();
 }
diff --git 
a/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/raft/ZonePartitionRaftListener.java
 
b/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/raft/ZonePartitionRaftListener.java
index 4e969cda8e1..27a3609d4d0 100644
--- 
a/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/raft/ZonePartitionRaftListener.java
+++ 
b/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/raft/ZonePartitionRaftListener.java
@@ -133,7 +133,7 @@ public class ZonePartitionRaftListener implements 
RaftGroupListener {
         this.commandHandlers = new CommandHandlers.Builder()
                 .addHandler(
                         PartitionReplicationMessageGroup.GROUP_TYPE,
-                        Commands.FINISH_TX,
+                        Commands.FINISH_TX_V2,
                         new FinishTxCommandHandler(txStatePartitionStorage, 
zonePartitionId, txManager))
                 .addHandler(
                         PartitionReplicationMessageGroup.GROUP_TYPE,
diff --git 
a/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/raft/handlers/FinishTxCommandHandler.java
 
b/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/raft/handlers/FinishTxCommandHandler.java
index e505a52f45a..69b808de47d 100644
--- 
a/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/raft/handlers/FinishTxCommandHandler.java
+++ 
b/modules/partition-replicator/src/main/java/org/apache/ignite/internal/partition/replicator/raft/handlers/FinishTxCommandHandler.java
@@ -29,6 +29,8 @@ import 
org.apache.ignite.internal.lang.IgniteInternalException;
 import org.apache.ignite.internal.logger.IgniteLogger;
 import org.apache.ignite.internal.logger.Loggers;
 import 
org.apache.ignite.internal.partition.replicator.network.command.FinishTxCommand;
+import 
org.apache.ignite.internal.partition.replicator.network.command.FinishTxCommandV1;
+import 
org.apache.ignite.internal.partition.replicator.network.command.FinishTxCommandV2;
 import org.apache.ignite.internal.partition.replicator.raft.CommandResult;
 import org.apache.ignite.internal.partition.replicator.raft.RaftTxFinishMarker;
 import 
org.apache.ignite.internal.partition.replicator.raft.UnexpectedTransactionStateException;
@@ -71,6 +73,15 @@ public class FinishTxCommandHandler extends 
AbstractCommandHandler<FinishTxComma
             long commandIndex,
             long commandTerm,
             @Nullable HybridTimestamp safeTimestamp
+    ) throws IgniteInternalException {
+        return handleInternally(command, commandIndex, commandTerm, 
enlistedPartitions(command));
+    }
+
+    private CommandResult handleInternally(
+            FinishTxCommand command,
+            long commandIndex,
+            long commandTerm,
+            List<EnlistedPartitionGroup> enlistedPartitions
     ) throws IgniteInternalException {
         // Skips the write command because the storage has already executed it.
         if (commandIndex <= txStatePartitionStorage.lastAppliedIndex()) {
@@ -83,7 +94,7 @@ public class FinishTxCommandHandler extends 
AbstractCommandHandler<FinishTxComma
 
         TxMeta txMetaToSet = new TxMeta(
                 stateToSet,
-                fromPartitionMessages(command.partitions()),
+                enlistedPartitions,
                 command.commitTimestamp()
         );
 
@@ -140,4 +151,19 @@ public class FinishTxCommandHandler extends 
AbstractCommandHandler<FinishTxComma
 
         throw stateChangeException;
     }
+
+    private static List<EnlistedPartitionGroup> 
enlistedPartitions(FinishTxCommand command) {
+        if (command instanceof FinishTxCommandV2) {
+            return fromPartitionMessages(((FinishTxCommandV2) 
command).partitions());
+        } else if (command instanceof FinishTxCommandV1) {
+            return enlistedPartitions((FinishTxCommandV1) command);
+        }
+
+        throw new IllegalArgumentException("Unknown command: " + command);
+    }
+
+    private static List<EnlistedPartitionGroup> 
enlistedPartitions(FinishTxCommandV1 command) {
+        // TODO: IGNITE-25732 доедалть
+        return List.of();
+    }
 }
diff --git 
a/modules/partition-replicator/src/test/java/org/apache/ignite/internal/partition/replicator/raft/ZonePartitionRaftListenerTest.java
 
b/modules/partition-replicator/src/test/java/org/apache/ignite/internal/partition/replicator/raft/ZonePartitionRaftListenerTest.java
index 6b3a9344079..7d7ede21872 100644
--- 
a/modules/partition-replicator/src/test/java/org/apache/ignite/internal/partition/replicator/raft/ZonePartitionRaftListenerTest.java
+++ 
b/modules/partition-replicator/src/test/java/org/apache/ignite/internal/partition/replicator/raft/ZonePartitionRaftListenerTest.java
@@ -451,7 +451,7 @@ class ZonePartitionRaftListenerTest extends 
BaseIgniteAbstractTest {
 
         FinishTxCommand finishTxCommand = mock(FinishTxCommand.class);
         
when(finishTxCommand.groupType()).thenReturn(PartitionReplicationMessageGroup.GROUP_TYPE);
-        when(finishTxCommand.messageType()).thenReturn(Commands.FINISH_TX);
+        when(finishTxCommand.messageType()).thenReturn(Commands.FINISH_TX_V2);
 
         PrimaryReplicaChangeCommand primaryReplicaChangeCommand = 
mock(PrimaryReplicaChangeCommand.class);
 
@@ -499,7 +499,7 @@ class ZonePartitionRaftListenerTest extends 
BaseIgniteAbstractTest {
     void updatesLastAppliedForFinishTxCommands() {
         safeTimeTracker.update(clock.now(), null);
 
-        FinishTxCommand command = 
PARTITION_REPLICATION_MESSAGES_FACTORY.finishTxCommand()
+        FinishTxCommand command = 
PARTITION_REPLICATION_MESSAGES_FACTORY.finishTxCommandV2()
                 .txId(TestTransactionIds.newTransactionId())
                 .initiatorTime(clock.now())
                 .partitions(List.of())
diff --git 
a/modules/table/src/main/java/org/apache/ignite/internal/table/distributed/raft/PartitionListener.java
 
b/modules/table/src/main/java/org/apache/ignite/internal/table/distributed/raft/PartitionListener.java
index d81549a8e20..da83a602324 100644
--- 
a/modules/table/src/main/java/org/apache/ignite/internal/table/distributed/raft/PartitionListener.java
+++ 
b/modules/table/src/main/java/org/apache/ignite/internal/table/distributed/raft/PartitionListener.java
@@ -21,7 +21,8 @@ import static java.lang.Math.max;
 import static 
org.apache.ignite.internal.hlc.HybridTimestamp.NULL_HYBRID_TIMESTAMP;
 import static 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessageGroup.Commands.BUILD_INDEX_V1;
 import static 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessageGroup.Commands.BUILD_INDEX_V2;
-import static 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessageGroup.Commands.FINISH_TX;
+import static 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessageGroup.Commands.FINISH_TX_V1;
+import static 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessageGroup.Commands.FINISH_TX_V2;
 import static 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessageGroup.Commands.UPDATE_MINIMUM_ACTIVE_TX_TIME_COMMAND;
 import static 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessageGroup.GROUP_TYPE;
 import static 
org.apache.ignite.internal.partition.replicator.raft.CommandResult.EMPTY_APPLIED_RESULT;
@@ -208,8 +209,15 @@ public class PartitionListener implements 
RaftGroupListener, RaftTableProcessor
         if (!nodeProperties.colocationEnabled()) {
             commandHandlersBuilder.addHandler(
                     GROUP_TYPE,
-                    FINISH_TX,
-                    new FinishTxCommandHandler(txStatePartitionStorage, 
tablePartitionId, txManager));
+                    FINISH_TX_V1,
+                    new FinishTxCommandHandler(txStatePartitionStorage, 
tablePartitionId, txManager)
+            );
+
+            commandHandlersBuilder.addHandler(
+                    GROUP_TYPE,
+                    FINISH_TX_V2,
+                    new FinishTxCommandHandler(txStatePartitionStorage, 
tablePartitionId, txManager)
+            );
 
             commandHandlersBuilder.addHandler(
                     TxMessageGroup.GROUP_TYPE,
diff --git 
a/modules/table/src/test/java/org/apache/ignite/internal/table/distributed/command/PartitionRaftCommandsSerializationTest.java
 
b/modules/table/src/test/java/org/apache/ignite/internal/table/distributed/command/PartitionRaftCommandsSerializationTest.java
index 4841ab3cfd6..9601883cb39 100644
--- 
a/modules/table/src/test/java/org/apache/ignite/internal/table/distributed/command/PartitionRaftCommandsSerializationTest.java
+++ 
b/modules/table/src/test/java/org/apache/ignite/internal/table/distributed/command/PartitionRaftCommandsSerializationTest.java
@@ -36,6 +36,7 @@ import org.apache.ignite.internal.hlc.HybridTimestamp;
 import 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessageGroup;
 import 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessagesFactory;
 import 
org.apache.ignite.internal.partition.replicator.network.command.FinishTxCommand;
+import 
org.apache.ignite.internal.partition.replicator.network.command.FinishTxCommandV2;
 import 
org.apache.ignite.internal.partition.replicator.network.command.TimedBinaryRowMessage;
 import 
org.apache.ignite.internal.partition.replicator.network.command.UpdateAllCommand;
 import 
org.apache.ignite.internal.partition.replicator.network.command.UpdateAllCommandV2;
@@ -256,7 +257,7 @@ public class PartitionRaftCommandsSerializationTest extends 
IgniteAbstractTest {
                     .build());
         }
 
-        FinishTxCommand cmd = 
PARTITION_REPLICATION_MESSAGES_FACTORY.finishTxCommand()
+        FinishTxCommand cmd = 
PARTITION_REPLICATION_MESSAGES_FACTORY.finishTxCommandV2()
                 .txId(UUID.randomUUID())
                 .commit(true)
                 .commitTimestamp(clock.now())
@@ -281,10 +282,10 @@ public class PartitionRaftCommandsSerializationTest 
extends IgniteAbstractTest {
     private <T extends Command> T copyCommand(T cmd) {
         assertEquals(PartitionReplicationMessageGroup.GROUP_TYPE, 
cmd.groupType());
 
-        if (cmd instanceof FinishTxCommand) {
-            FinishTxCommand finishTxCommand = (FinishTxCommand) cmd;
+        if (cmd instanceof FinishTxCommandV2) {
+            FinishTxCommandV2 finishTxCommand = (FinishTxCommandV2) cmd;
 
-            return (T) PARTITION_REPLICATION_MESSAGES_FACTORY.finishTxCommand()
+            return (T) 
PARTITION_REPLICATION_MESSAGES_FACTORY.finishTxCommandV2()
                     .txId(finishTxCommand.txId())
                     .commit(finishTxCommand.commit())
                     .partitions(finishTxCommand.partitions())
diff --git 
a/modules/table/src/test/java/org/apache/ignite/internal/table/distributed/raft/PartitionCommandListenerTest.java
 
b/modules/table/src/test/java/org/apache/ignite/internal/table/distributed/raft/PartitionCommandListenerTest.java
index ccf7df5cf24..1f3ebd40a63 100644
--- 
a/modules/table/src/test/java/org/apache/ignite/internal/table/distributed/raft/PartitionCommandListenerTest.java
+++ 
b/modules/table/src/test/java/org/apache/ignite/internal/table/distributed/raft/PartitionCommandListenerTest.java
@@ -428,7 +428,7 @@ public class PartitionCommandListenerTest extends 
BaseIgniteAbstractTest {
         SafeTimeSyncCommand safeTimeSyncCommand = 
mock(SafeTimeSyncCommand.class);
         FinishTxCommand finishTxCommand = mock(FinishTxCommand.class);
         
when(finishTxCommand.groupType()).thenReturn(PartitionReplicationMessageGroup.GROUP_TYPE);
-        when(finishTxCommand.messageType()).thenReturn(Commands.FINISH_TX);
+        when(finishTxCommand.messageType()).thenReturn(Commands.FINISH_TX_V2);
 
         PrimaryReplicaChangeCommand primaryReplicaChangeCommand = 
mock(PrimaryReplicaChangeCommand.class);
 
@@ -639,7 +639,7 @@ public class PartitionCommandListenerTest extends 
BaseIgniteAbstractTest {
     void updatesLastAppliedForFinishTxCommands() {
         safeTimeTracker.update(hybridClock.now(), null);
 
-        FinishTxCommand command = 
PARTITION_REPLICATION_MESSAGES_FACTORY.finishTxCommand()
+        FinishTxCommand command = 
PARTITION_REPLICATION_MESSAGES_FACTORY.finishTxCommandV2()
                 .txId(TestTransactionIds.newTransactionId())
                 .initiatorTime(hybridClock.now())
                 .partitions(List.of())
diff --git 
a/modules/table/src/test/java/org/apache/ignite/internal/table/distributed/schema/PartitionCommandsMarshallerImplTest.java
 
b/modules/table/src/test/java/org/apache/ignite/internal/table/distributed/schema/PartitionCommandsMarshallerImplTest.java
index 3b309ab8d1e..81ab12949ac 100644
--- 
a/modules/table/src/test/java/org/apache/ignite/internal/table/distributed/schema/PartitionCommandsMarshallerImplTest.java
+++ 
b/modules/table/src/test/java/org/apache/ignite/internal/table/distributed/schema/PartitionCommandsMarshallerImplTest.java
@@ -33,7 +33,7 @@ import 
org.apache.ignite.internal.network.serialization.MessageSerializationRegi
 import 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessageGroup;
 import 
org.apache.ignite.internal.partition.replicator.network.PartitionReplicationMessagesFactory;
 import 
org.apache.ignite.internal.partition.replicator.network.command.FinishTxCommand;
-import 
org.apache.ignite.internal.partition.replicator.network.command.FinishTxCommandSerializationFactory;
+import 
org.apache.ignite.internal.partition.replicator.network.command.FinishTxCommandV2SerializationFactory;
 import org.apache.ignite.internal.raft.util.OptimizedMarshaller;
 import org.apache.ignite.internal.replicator.command.SafeTimeSyncCommand;
 import 
org.apache.ignite.internal.replicator.command.SafeTimeSyncCommandSerializationFactory;
@@ -51,8 +51,8 @@ class PartitionCommandsMarshallerImplTest {
         // For a command that has required catalog version property.
         registry.registerFactory(
                 PartitionReplicationMessageGroup.GROUP_TYPE,
-                PartitionReplicationMessageGroup.Commands.FINISH_TX,
-                new FinishTxCommandSerializationFactory(tableMessagesFactory)
+                PartitionReplicationMessageGroup.Commands.FINISH_TX_V2,
+                new FinishTxCommandV2SerializationFactory(tableMessagesFactory)
         );
 
         // For a command that does not have required catalog version property.
@@ -98,7 +98,7 @@ class PartitionCommandsMarshallerImplTest {
 
     private FinishTxCommand commandWithRequiredCatalogVersion(int 
requiredCatalogVersion) {
         long time = System.currentTimeMillis();
-        return tableMessagesFactory.finishTxCommand()
+        return tableMessagesFactory.finishTxCommandV2()
                 .txId(UUID.randomUUID())
                 .partitions(List.of())
                 .initiatorTime(HybridTimestamp.hybridTimestamp(time))

Reply via email to