diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2017-01-08 22:58:33 +0100 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2017-01-08 22:58:33 +0100 |
commit | 98ab0aaa219617a595754e6343356c98cc7d1a9d (patch) | |
tree | 6835a7be8c26113031aa80da56c79c32b0074dc4 /vespaclient-core | |
parent | 94d87e9e76e30867c75a21e7df1bfef164a6708c (diff) |
Since we might miss a notify we need to wake and check if we missed the wakeup call.
Diffstat (limited to 'vespaclient-core')
-rwxr-xr-x | vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java b/vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java index 949be19c3eb..3c19da5b4fd 100755 --- a/vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java +++ b/vespaclient-core/src/main/java/com/yahoo/feedapi/SharedSender.java @@ -22,8 +22,8 @@ public class SharedSender implements ReplyHandler { public static final Logger log = Logger.getLogger(SharedSender.class.getName()); private SendSession sender; - private final Object monitor = new Object(); private RouteMetricSet metrics; + private static final int REACT_LATENCY_ON_RACE = 5; private ConcurrentHashMap<ResultCallback, OwnerState> activeOwners = new ConcurrentHashMap<>(); @@ -253,7 +253,7 @@ public class SharedSender implements ReplyHandler { long timeLeft = timeoutMS; synchronized (numPending) { while ((numPending.get() > 0) && (timeLeft > 0)) { - numPending.wait(timeLeft); + numPending.wait(REACT_LATENCY_ON_RACE); timeLeft = timeoutMS - (SystemTimer.INSTANCE.milliTime() - timeStart); } } @@ -263,7 +263,7 @@ public class SharedSender implements ReplyHandler { void waitPending() throws InterruptedException { synchronized (numPending) { while (numPending.get() > 0) { - numPending.wait(); + numPending.wait(REACT_LATENCY_ON_RACE); } } } |