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());
}