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 c8997aa952 IGNITE-21317 Fix ItRebalanceDistributedTest (#3185)
c8997aa952 is described below

commit c8997aa9522641f7c91f47a682e3fc666a3d7a65
Author: Alexander Lapin <[email protected]>
AuthorDate: Thu Feb 8 19:47:12 2024 +0200

    IGNITE-21317 Fix ItRebalanceDistributedTest (#3185)
---
 .../rebalance/ItRebalanceDistributedTest.java      | 47 +++++++++++-----------
 1 file changed, 23 insertions(+), 24 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 9842e78334..dd61c4978f 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
@@ -163,7 +163,6 @@ import 
org.apache.ignite.internal.storage.pagememory.VolatilePageMemoryDataStora
 import 
org.apache.ignite.internal.storage.pagememory.configuration.schema.PersistentPageMemoryStorageEngineConfiguration;
 import 
org.apache.ignite.internal.storage.pagememory.configuration.schema.VolatilePageMemoryStorageEngineConfiguration;
 import org.apache.ignite.internal.table.InternalTable;
-import org.apache.ignite.internal.table.TableImpl;
 import org.apache.ignite.internal.table.TableTestUtils;
 import org.apache.ignite.internal.table.TableViewInternal;
 import org.apache.ignite.internal.table.distributed.TableManager;
@@ -485,8 +484,6 @@ public class ItRebalanceDistributedTest extends 
BaseIgniteAbstractTest {
 
         createTableWithOnePartition(node, TABLE_NAME, ZONE_NAME, 3, true);
 
-        waitPartitionAssignmentsSyncedToExpected(0, 3);
-
         Set<Assignment> assignmentsBeforeChangeReplicas = 
getPartitionClusterNodes(node, 0);
 
         changeTableReplicasForSinglePartition(node, ZONE_NAME, 2);
@@ -519,8 +516,6 @@ public class ItRebalanceDistributedTest extends 
BaseIgniteAbstractTest {
 
         createTableWithOnePartition(node, TABLE_NAME, ZONE_NAME, 3, true);
 
-        waitPartitionAssignmentsSyncedToExpected(0, 3);
-
         Set<Assignment> assignmentsBeforeChangeReplicas = 
getPartitionClusterNodes(node, 0);
 
         nodes.forEach(n -> {
@@ -595,10 +590,12 @@ public class ItRebalanceDistributedTest extends 
BaseIgniteAbstractTest {
 
         createTable(node, ZONE_NAME, TABLE_NAME);
 
-        assertTrue(waitForCondition(() -> getPartitionClusterNodes(node, 
0).size() == 1, AWAIT_TIMEOUT_MILLIS));
+        waitPartitionAssignmentsSyncedToExpected(0, 1);
 
         alterZone(node, ZONE_NAME, 3);
 
+        waitPartitionAssignmentsSyncedToExpected(0, 3);
+
         checkPartitionAssignmentsSyncedAndRebalanceKeysEmpty();
 
         directUpdateMetastoreRebalanceAssignmentKeys();
@@ -609,7 +606,6 @@ public class ItRebalanceDistributedTest extends 
BaseIgniteAbstractTest {
     }
 
     @Test
-    @Disabled("https://issues.apache.org/jira/browse/IGNITE-21317";)
     void testRaftClientsUpdatesAfterRebalance() throws Exception {
         Node node = getNode(0);
 
@@ -617,7 +613,7 @@ public class ItRebalanceDistributedTest extends 
BaseIgniteAbstractTest {
 
         createTable(node, ZONE_NAME, TABLE_NAME);
 
-        assertTrue(waitForCondition(() -> getPartitionClusterNodes(node, 
0).size() == 1, AWAIT_TIMEOUT_MILLIS));
+        waitPartitionAssignmentsSyncedToExpected(0, 1);
 
         Set<Assignment> assignmentsBeforeRebalance = 
getPartitionClusterNodes(node, 0);
 
@@ -664,8 +660,8 @@ public class ItRebalanceDistributedTest extends 
BaseIgniteAbstractTest {
 
     }
 
+
     @Test
-    @Disabled("https://issues.apache.org/jira/browse/IGNITE-21317";)
     void testClientsAreUpdatedAfterPendingRebalanceHandled() throws Exception {
         Node node = getNode(0);
 
@@ -673,7 +669,7 @@ public class ItRebalanceDistributedTest extends 
BaseIgniteAbstractTest {
 
         createTable(node, ZONE_NAME, TABLE_NAME);
 
-        assertTrue(waitForCondition(() -> getPartitionClusterNodes(node, 
0).size() == 1, AWAIT_TIMEOUT_MILLIS));
+        waitPartitionAssignmentsSyncedToExpected(0, 1);
 
         String assignmentsBeforeRebalance = getPartitionClusterNodes(node, 
0).stream()
                 .findFirst()
@@ -784,20 +780,23 @@ public class ItRebalanceDistributedTest extends 
BaseIgniteAbstractTest {
                 (long) AWAIT_TIMEOUT_MILLIS * nodes.size()
         ));
 
-        if (replicasNum == nodes.size()) {
-            assertTrue(waitForCondition(
-                    () -> {
-                        try {
-                            return ((TableImpl) 
nodes.get(0).tableManager.table(TABLE_NAME))
-                                    
.internalTable().partitionRaftGroupService(partNum) != null;
-                        } catch (IgniteInternalException e) {
-                            // Raft group service not found.
-                            return false;
-                        }
-                    },
-                    (long) AWAIT_TIMEOUT_MILLIS * nodes.size()
-            ));
-        }
+        assertTrue(waitForCondition(
+                () -> {
+                    try {
+                        return nodes.stream().allMatch(n ->
+                                n.tableManager
+                                        .latestTables()
+                                        .get(getTableId(n, TABLE_NAME))
+                                        .internalTable()
+                                        .partitionRaftGroupService(partNum) != 
null
+                        );
+                    } catch (IgniteInternalException e) {
+                        // Raft group service not found.
+                        return false;
+                    }
+                },
+                (long) AWAIT_TIMEOUT_MILLIS * nodes.size()
+        ));
     }
 
     private void waitPartitionPendingAssignmentsSyncedToExpected(int partNum, 
int replicasNum) throws Exception {

Reply via email to