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

ckj pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-uniffle.git


The following commit(s) were added to refs/heads/master by this push:
     new cdbbc940 [ISSUE-514] Fix flaky test: 
ShuffleServerGrpcTest#clearResourceTest (#516)
cdbbc940 is described below

commit cdbbc940102dea3e58a20373140ad4849bcc3776
Author: xianjingfeng <[email protected]>
AuthorDate: Sun Jan 29 14:39:41 2023 +0800

    [ISSUE-514] Fix flaky test: ShuffleServerGrpcTest#clearResourceTest (#516)
    
    ### What changes were proposed in this pull request?
    
    Fix flaky test: ShuffleServerGrpcTest#clearResourceTest. Fix #514
    
    ### Why are the changes needed?
    
    It is flaky test.
    In this UT, `rss.server.preAllocation.expired=5000`, so 
`ShuffleTaskManager#checkResourceStatus` will be invoked for every 2.5 seconds 
and expired app may will not be removed until 7.5 seconds after stop heartbeat. 
So sleep 8 seconds may not be reliable.
    
    ### Does this PR introduce _any_ user-facing change?
    
    No
    
    ### How was this patch tested?
    
    No need
---
 .../src/test/java/org/apache/uniffle/test/ShuffleServerGrpcTest.java | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git 
a/integration-test/common/src/test/java/org/apache/uniffle/test/ShuffleServerGrpcTest.java
 
b/integration-test/common/src/test/java/org/apache/uniffle/test/ShuffleServerGrpcTest.java
index fde353b6..23763ad9 100644
--- 
a/integration-test/common/src/test/java/org/apache/uniffle/test/ShuffleServerGrpcTest.java
+++ 
b/integration-test/common/src/test/java/org/apache/uniffle/test/ShuffleServerGrpcTest.java
@@ -22,12 +22,14 @@ import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicInteger;
 
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import com.google.common.collect.Sets;
 import com.google.protobuf.ByteString;
+import org.awaitility.Awaitility;
 import org.junit.jupiter.api.BeforeAll;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Disabled;
@@ -158,7 +160,8 @@ public class ShuffleServerGrpcTest extends 
IntegrationTestBase {
 
     // clearResourceTest1 will be removed because of 
rss.server.app.expired.withoutHeartbeat
     t.interrupt();
-    Thread.sleep(8000);
+    Awaitility.await().timeout(20, TimeUnit.SECONDS).until(
+        () -> shuffleServers.get(0).getShuffleTaskManager().getAppIds().size() 
== 0);
     assertEquals(0, 
shuffleServers.get(0).getShuffleTaskManager().getAppIds().size());
 
   }

Reply via email to