kezhuw commented on a change in pull request #15344:
URL: https://github.com/apache/flink/pull/15344#discussion_r601457178
##########
File path:
flink-test-utils-parent/flink-test-utils-junit/src/main/java/org/apache/flink/core/testutils/CommonTestUtils.java
##########
@@ -198,16 +205,17 @@ public static void assertThrows(
@SuppressWarnings("BusyWait")
public static void waitUtil(Supplier<Boolean> condition, Duration timeout,
String errorMsg)
throws TimeoutException, InterruptedException {
- long timeoutMs = timeout.toMillis();
- if (timeoutMs <= 0) {
+ long timeoutNanos = timeout.toNanos();
+ if (timeoutNanos <= 0) {
throw new IllegalArgumentException("The timeout must be
positive.");
}
- long startingTime = System.currentTimeMillis();
- while (!condition.get() && System.currentTimeMillis() - startingTime <
timeoutMs) {
+ long startingTime = System.nanoTime();
Review comment:
Did you means wrong `System.currentTimeMillis` ? I think it is
implementor's responsibility. As a user, I think `Duration` in api is more
friendly, there are many wrapping calls `Deadline.fromNow(Duration.of(...))`.
I guess I could use `Deadline` in implementation first ?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]