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

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


The following commit(s) were added to refs/heads/main by this push:
     new 3ecc2831af IGNITE-21503 Fix 
ItRebalanceDistributedTest#testRebalanceWithTheSameNodes (#3194)
3ecc2831af is described below

commit 3ecc2831afd80418d15d14ef9e680ffe031a35bd
Author: Alexander Lapin <lapin1...@gmail.com>
AuthorDate: Fri Feb 9 16:39:57 2024 +0200

    IGNITE-21503 Fix ItRebalanceDistributedTest#testRebalanceWithTheSameNodes 
(#3194)
---
 .../internal/rebalance/ItRebalanceDistributedTest.java    | 12 +++++-------
 .../distributed/replicator/PartitionReplicaListener.java  |  2 +-
 .../org/apache/ignite/internal/table/TxAbstractTest.java  | 13 +++++++++++--
 .../org/apache/ignite/internal/tx/impl/TxManagerImpl.java | 15 ++++++++-------
 4 files changed, 25 insertions(+), 17 deletions(-)

diff --git 
a/modules/table/src/integrationTest/java/org/apache/ignite/internal/rebalance/ItRebalanceDistributedTest.java
 
b/modules/table/src/integrationTest/java/org/apache/ignite/internal/rebalance/ItRebalanceDistributedTest.java
index c5671db508..d3ac1d1001 100644
--- 
a/modules/table/src/integrationTest/java/org/apache/ignite/internal/rebalance/ItRebalanceDistributedTest.java
+++ 
b/modules/table/src/integrationTest/java/org/apache/ignite/internal/rebalance/ItRebalanceDistributedTest.java
@@ -51,7 +51,6 @@ import static org.mockito.Mockito.doAnswer;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.timeout;
-import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 
 import java.io.IOException;
@@ -304,7 +303,7 @@ public class ItRebalanceDistributedTest extends 
BaseIgniteAbstractTest {
 
                     return logicalTopologyFuture.join().nodes().size() == 
NODE_COUNT;
                 },
-                10_000
+                AWAIT_TIMEOUT_MILLIS
         ));
     }
 
@@ -766,11 +765,10 @@ public class ItRebalanceDistributedTest extends 
BaseIgniteAbstractTest {
 
     private void verifyThatRaftNodesAndReplicasWereStartedOnlyOnce() throws 
Exception {
         for (int i = 0; i < NODE_COUNT; i++) {
-            verify(
-                    getNode(i).raftManager,
-                    times(1)).startRaftGroupNodeWithoutService(any(), any(), 
any(), any(), any(RaftGroupOptions.class)
-            );
-            verify(getNode(i).replicaManager, times(1)).startReplica(any(), 
any(), any(), any(), any());
+            verify(getNode(i).raftManager, 
timeout(AWAIT_TIMEOUT_MILLIS).times(1))
+                    .startRaftGroupNodeWithoutService(any(), any(), any(), 
any(), any(RaftGroupOptions.class));
+            verify(getNode(i).replicaManager, 
timeout(AWAIT_TIMEOUT_MILLIS).times(1))
+                    .startReplica(any(), any(), any(), any(), any());
         }
     }
 
diff --git 
a/modules/table/src/main/java/org/apache/ignite/internal/table/distributed/replicator/PartitionReplicaListener.java
 
b/modules/table/src/main/java/org/apache/ignite/internal/table/distributed/replicator/PartitionReplicaListener.java
index d756276491..5a5007737d 100644
--- 
a/modules/table/src/main/java/org/apache/ignite/internal/table/distributed/replicator/PartitionReplicaListener.java
+++ 
b/modules/table/src/main/java/org/apache/ignite/internal/table/distributed/replicator/PartitionReplicaListener.java
@@ -3328,7 +3328,7 @@ public class PartitionReplicaListener implements 
ReplicaListener {
                                             localNode.name(),
                                             null,
                                             localNode.id(),
-                                            
primaryReplicaMeta.getLeaseholderId(),
+                                            null,
                                             enlistmentConsistencyToken,
                                             null,
                                             null
diff --git 
a/modules/table/src/testFixtures/java/org/apache/ignite/internal/table/TxAbstractTest.java
 
b/modules/table/src/testFixtures/java/org/apache/ignite/internal/table/TxAbstractTest.java
index 4bd4cd0476..d56a8ea2c9 100644
--- 
a/modules/table/src/testFixtures/java/org/apache/ignite/internal/table/TxAbstractTest.java
+++ 
b/modules/table/src/testFixtures/java/org/apache/ignite/internal/table/TxAbstractTest.java
@@ -434,8 +434,11 @@ public abstract class TxAbstractTest extends 
IgniteAbstractTest {
     public void testDeleteUpsertAllRollback() throws TransactionException {
         deleteUpsertAll().rollback();
 
-        assertEquals(100., accounts.recordView().get(null, 
makeKey(1)).doubleValue("balance"));
-        assertEquals(100., accounts.recordView().get(null, 
makeKey(2)).doubleValue("balance"));
+        var res1 = accounts.recordView().get(null, makeKey(1));
+        assertEquals(100., res1.doubleValue("balance"), "tuple =[" + res1 + 
"]");
+
+        var res2 = accounts.recordView().get(null, makeKey(2));
+        assertEquals(100., res2.doubleValue("balance"), "tuple =[" + res2 + 
"]");
     }
 
     private InternalTransaction deleteUpsertAll() {
@@ -445,6 +448,12 @@ public abstract class TxAbstractTest extends 
IgniteAbstractTest {
 
         accounts.recordView().upsertAll(null, tuples);
 
+        var res1 = accounts.recordView().get(null, makeKey(1));
+        assertEquals(100., res1.doubleValue("balance"), "tuple =[" + res1 + 
"]");
+
+        var res2 = accounts.recordView().get(null, makeKey(2));
+        assertEquals(100., res2.doubleValue("balance"), "tuple =[" + res2 + 
"]");
+
         InternalTransaction tx = (InternalTransaction) 
igniteTransactions.begin();
 
         tuples.clear();
diff --git 
a/modules/transactions/src/main/java/org/apache/ignite/internal/tx/impl/TxManagerImpl.java
 
b/modules/transactions/src/main/java/org/apache/ignite/internal/tx/impl/TxManagerImpl.java
index 26d4f1c9ab..fe450b2b5c 100644
--- 
a/modules/transactions/src/main/java/org/apache/ignite/internal/tx/impl/TxManagerImpl.java
+++ 
b/modules/transactions/src/main/java/org/apache/ignite/internal/tx/impl/TxManagerImpl.java
@@ -162,11 +162,12 @@ public class TxManagerImpl implements TxManager, 
NetworkMessageHandler {
      * TODO: IGNITE-21440 Implement transaction metrics.
      */
     private final AtomicInteger startedTxs = new AtomicInteger();
+
     /**
-     * Total number of fixed transaction.
+     * Total number of finished transaction.
      * TODO: IGNITE-21440 Implement transaction metrics.
      */
-    private final AtomicInteger fixedTxs = new AtomicInteger();
+    private final AtomicInteger finishedTxs = new AtomicInteger();
 
 
     /** Busy lock to stop synchronously. */
@@ -366,7 +367,7 @@ public class TxManagerImpl implements TxManager, 
NetworkMessageHandler {
     public void finishFull(HybridTimestampTracker timestampTracker, UUID txId, 
boolean commit) {
         TxState finalState;
 
-        fixedTxs.incrementAndGet();
+        finishedTxs.incrementAndGet();
 
         if (commit) {
             timestampTracker.update(clock.now());
@@ -395,7 +396,7 @@ public class TxManagerImpl implements TxManager, 
NetworkMessageHandler {
     ) {
         LOG.debug("Finish [commit={}, txId={}, groups={}].", commitIntent, 
txId, enlistedGroups);
 
-        fixedTxs.incrementAndGet();
+        finishedTxs.incrementAndGet();
 
         assert enlistedGroups != null;
 
@@ -657,12 +658,12 @@ public class TxManagerImpl implements TxManager, 
NetworkMessageHandler {
 
     @Override
     public int finished() {
-        return fixedTxs.get();
+        return finishedTxs.get();
     }
 
     @Override
     public int pending() {
-        return startedTxs.get() - fixedTxs.get();
+        return startedTxs.get() - finishedTxs.get();
     }
 
     @Override
@@ -734,7 +735,7 @@ public class TxManagerImpl implements TxManager, 
NetworkMessageHandler {
     }
 
     CompletableFuture<Void> completeReadOnlyTransactionFuture(TxIdAndTimestamp 
txIdAndTimestamp) {
-        fixedTxs.incrementAndGet();
+        finishedTxs.incrementAndGet();
 
         CompletableFuture<Void> readOnlyTxFuture = 
readOnlyTxFutureById.remove(txIdAndTimestamp);
 

Reply via email to