This is an automated email from the ASF dual-hosted git repository.
vveider 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 1c32da4df IGNITE-17289 IgniteWorkerTest#testUpdateHeartbeat is flaky
(#919)
1c32da4df is described below
commit 1c32da4df71d1198cd11af6db04f8bc8043e4f5f
Author: Kirill Tkalenko <[email protected]>
AuthorDate: Mon Jul 4 16:50:38 2022 +0300
IGNITE-17289 IgniteWorkerTest#testUpdateHeartbeat is flaky (#919)
---
.../ignite/internal/util/worker/IgniteWorkerTest.java | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/util/worker/IgniteWorkerTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/util/worker/IgniteWorkerTest.java
index ca484abe5..75628e21f 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/util/worker/IgniteWorkerTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/util/worker/IgniteWorkerTest.java
@@ -18,6 +18,7 @@
package org.apache.ignite.internal.util.worker;
import static
org.apache.ignite.internal.testframework.IgniteTestUtils.runAsync;
+import static
org.apache.ignite.internal.testframework.IgniteTestUtils.waitForCondition;
import static
org.apache.ignite.internal.util.FastTimestamps.coarseCurrentTimeMillis;
import static
org.apache.ignite.internal.util.worker.IgniteWorkerTest.TestWorkerListener.ON_IDLE;
import static
org.apache.ignite.internal.util.worker.IgniteWorkerTest.TestWorkerListener.ON_STARTED;
@@ -100,21 +101,23 @@ public class IgniteWorkerTest {
void testUpdateHeartbeat() throws Exception {
IgniteWorker worker = new NoopWorker(log, null);
- long currentTimeMillis = coarseCurrentTimeMillis();
+ assertEquals(0, worker.heartbeat());
+
+ long coarseCurrentTimeMillis = coarseCurrentTimeMillis();
worker.updateHeartbeat();
long heartbeat = worker.heartbeat();
- assertThat(heartbeat, greaterThanOrEqualTo(currentTimeMillis));
+ assertThat(heartbeat, greaterThanOrEqualTo(coarseCurrentTimeMillis));
- Thread.sleep(10);
-
- assertEquals(heartbeat, worker.heartbeat());
+ assertTrue(waitForCondition(() -> coarseCurrentTimeMillis() >
coarseCurrentTimeMillis, 10, 1_000));
worker.updateHeartbeat();
assertThat(worker.heartbeat(), greaterThan(heartbeat));
+ assertThat(worker.heartbeat(), greaterThan(coarseCurrentTimeMillis));
+ assertThat(worker.heartbeat(),
lessThanOrEqualTo(coarseCurrentTimeMillis()));
}
@Test