aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--vespa-http-client/src/main/java/com/yahoo/vespa/http/client/core/communication/IOThread.java10
1 files changed, 3 insertions, 7 deletions
diff --git a/vespa-http-client/src/main/java/com/yahoo/vespa/http/client/core/communication/IOThread.java b/vespa-http-client/src/main/java/com/yahoo/vespa/http/client/core/communication/IOThread.java
index 7536c44e68e..1764016bae6 100644
--- a/vespa-http-client/src/main/java/com/yahoo/vespa/http/client/core/communication/IOThread.java
+++ b/vespa-http-client/src/main/java/com/yahoo/vespa/http/client/core/communication/IOThread.java
@@ -19,7 +19,6 @@ import java.time.Instant;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
-import java.util.Iterator;
import java.util.List;
import java.util.Optional;
import java.util.Random;
@@ -595,12 +594,9 @@ public class IOThread implements Runnable, AutoCloseable {
if (connection.lastPollTime() == null) return true;
// Exponential (2^x) dropoff:
- double unit = pollIntervalUS / 1000.0;
- double x = ( clock.millis() - connection.connectionTime().plus(connectionTimeToLive).toEpochMilli() ) / unit;
- double lastX = ( connection.lastPollTime().toEpochMilli() - connection.connectionTime().plus(connectionTimeToLive).toEpochMilli() ) / unit;
-
- double currentDelayDoublings = Math.log(lastX)/Math.log(2);
- return (x - lastX) > Math.pow(2, currentDelayDoublings);
+ double connectionEndOfLife = connection.connectionTime().plus(connectionTimeToLive).toEpochMilli();
+ double connectionLastPolled = connection.lastPollTime().toEpochMilli();
+ return clock.millis() - connectionEndOfLife > 2 * (connectionLastPolled - connectionEndOfLife);
}
private Instant closingTime(GatewayConnection connection) {