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

kxiao pushed a commit to branch branch-2.0
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-2.0 by this push:
     new 28a76bf0079 [branch-2.0](fe ut) fix decommission test #27082 (#27175)
28a76bf0079 is described below

commit 28a76bf0079bb42b4fe700ee2b6180ffb528360b
Author: yujun <[email protected]>
AuthorDate: Fri Nov 17 22:20:43 2023 +0800

    [branch-2.0](fe ut) fix decommission test #27082 (#27175)
---
 .../org/apache/doris/clone/DecommissionTest.java   | 28 +++++++++++-----------
 1 file changed, 14 insertions(+), 14 deletions(-)

diff --git 
a/fe/fe-core/src/test/java/org/apache/doris/clone/DecommissionTest.java 
b/fe/fe-core/src/test/java/org/apache/doris/clone/DecommissionTest.java
index eae28a01345..4c37c66f49a 100644
--- a/fe/fe-core/src/test/java/org/apache/doris/clone/DecommissionTest.java
+++ b/fe/fe-core/src/test/java/org/apache/doris/clone/DecommissionTest.java
@@ -32,7 +32,6 @@ import org.apache.doris.thrift.TDisk;
 import org.apache.doris.thrift.TStorageMedium;
 import org.apache.doris.utframe.UtFrameUtils;
 
-import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import org.apache.logging.log4j.LogManager;
 import org.apache.logging.log4j.Logger;
@@ -45,6 +44,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Random;
 import java.util.UUID;
+import java.util.stream.Collectors;
 
 public class DecommissionTest {
     private static final Logger LOG = 
LogManager.getLogger(TabletReplicaTooSlowTest.class);
@@ -152,23 +152,23 @@ public class DecommissionTest {
     }
 
     void checkBalance(int tryTimes, int totalReplicaNum, int backendNum) 
throws Exception {
-        int beReplicaNum = totalReplicaNum / backendNum;
         for (int i = 0; i < tryTimes; i++) {
             List<Long> backendIds = 
Env.getCurrentSystemInfo().getAllBackendIds(true);
-            if (backendNum != backendIds.size() && i != tryTimes - 1) {
-                Thread.sleep(1000);
-                continue;
+            if (backendNum == backendIds.size()) {
+                break;
             }
 
-            List<Integer> tabletNums = Lists.newArrayList();
-            for (long beId : backendIds) {
-                
tabletNums.add(Env.getCurrentInvertedIndex().getTabletNumByBackendId(beId));
-            }
-
-            Assert.assertEquals("tablet nums = " + tabletNums, backendNum, 
backendIds.size());
-            for (int tabletNum : tabletNums) {
-                Assert.assertEquals("tablet nums = " + tabletNums, 
beReplicaNum, tabletNum);
-            }
+            Thread.sleep(1000);
         }
+
+        List<Long> backendIds = 
Env.getCurrentSystemInfo().getAllBackendIds(true);
+        Assert.assertEquals(backendNum, backendIds.size());
+        List<Integer> tabletNums = backendIds.stream()
+                .map(beId -> 
Env.getCurrentInvertedIndex().getTabletNumByBackendId(beId))
+                .collect(Collectors.toList());
+
+        int avgReplicaNum = totalReplicaNum / backendNum;
+        boolean balanced = tabletNums.stream().allMatch(num -> Math.abs(num - 
avgReplicaNum) <= 30);
+        Assert.assertTrue("not balance, tablet nums = " + tabletNums, 
balanced);
     }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to