diff options
-rw-r--r-- | node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java index 175de8706cb..2690a8f3fb8 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java @@ -193,19 +193,19 @@ public class NodeAgentImpl implements NodeAgent { private void loop() { while (! terminated.get()) { - try { - synchronized (monitor) { - long waittimeLeft = delaysBetweenEachTickMillis; - while (waittimeLeft > 1 && !workToDoNow) { - Instant start = Instant.now(); + synchronized (monitor) { + long waittimeLeft = delaysBetweenEachTickMillis; + while (waittimeLeft > 1 && !workToDoNow) { + Instant start = Instant.now(); + try { monitor.wait(waittimeLeft); - waittimeLeft -= Duration.between(start, Instant.now()).toMillis(); + } catch (InterruptedException e) { + logger.severe("Interrupted, but ignoring this: " + hostname); + continue; } - workToDoNow = false; + waittimeLeft -= Duration.between(start, Instant.now()).toMillis(); } - } catch (InterruptedException e) { - logger.severe("Interrupted, but ignoring this: " + hostname); - continue; + workToDoNow = false; } isFrozen.set(wantFrozen.get()); if (isFrozen.get()) { |