aboutsummaryrefslogtreecommitdiffstats
path: root/zkfacade
diff options
context:
space:
mode:
authorJon Marius Venstad <venstad@gmail.com>2021-04-28 15:56:45 +0200
committerJon Marius Venstad <venstad@gmail.com>2021-04-28 15:56:45 +0200
commit5d2c85de4e5e5f9182189cb2aaf9369070f41533 (patch)
tree306f65d364d04f5c23e41b8cdc3d3c90c7162342 /zkfacade
parent4fbd27dddde4aff5de1be48f79057b6357bed123 (diff)
More lazy debug log message generation
Diffstat (limited to 'zkfacade')
-rw-r--r--zkfacade/src/main/java/com/yahoo/vespa/curator/CuratorCompletionWaiter.java14
1 files changed, 8 insertions, 6 deletions
diff --git a/zkfacade/src/main/java/com/yahoo/vespa/curator/CuratorCompletionWaiter.java b/zkfacade/src/main/java/com/yahoo/vespa/curator/CuratorCompletionWaiter.java
index 3789e30509c..af269fc2ad5 100644
--- a/zkfacade/src/main/java/com/yahoo/vespa/curator/CuratorCompletionWaiter.java
+++ b/zkfacade/src/main/java/com/yahoo/vespa/curator/CuratorCompletionWaiter.java
@@ -1,6 +1,7 @@
// Copyright Verizon Media. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.curator;
+import java.util.ArrayList;
import java.util.logging.Level;
import com.yahoo.path.Path;
@@ -36,9 +37,9 @@ class CuratorCompletionWaiter implements Curator.CompletionWaiter {
public void awaitCompletion(Duration timeout) {
List<String> respondents;
try {
- log.log(Level.FINE, "Synchronizing on barrier " + barrierPath);
+ log.log(Level.FINE, () -> "Synchronizing on barrier " + barrierPath);
respondents = awaitInternal(timeout);
- log.log(Level.FINE, "Done synchronizing on barrier " + barrierPath);
+ log.log(Level.FINE, () -> "Done synchronizing on barrier " + barrierPath);
} catch (Exception e) {
throw new RuntimeException(e);
}
@@ -54,9 +55,10 @@ class CuratorCompletionWaiter implements Curator.CompletionWaiter {
private List<String> awaitInternal(Duration timeout) throws Exception {
Instant startTime = clock.instant();
Instant endTime = startTime.plus(timeout);
- List<String> respondents;
+ List<String> respondents = new ArrayList<>();
do {
- respondents = curator.framework().getChildren().forPath(barrierPath);
+ respondents.clear();
+ respondents.addAll(curator.framework().getChildren().forPath(barrierPath));
if (log.isLoggable(Level.FINE)) {
log.log(Level.FINE, respondents.size() + "/" + curator.zooKeeperEnsembleCount() + " responded: " +
respondents + ", all participants: " + curator.zooKeeperEnsembleConnectionSpec());
@@ -64,12 +66,12 @@ class CuratorCompletionWaiter implements Curator.CompletionWaiter {
// First, check if all config servers responded
if (respondents.size() == curator.zooKeeperEnsembleCount()) {
- log.log(Level.FINE, barrierCompletedMessage(respondents, startTime));
+ log.log(Level.FINE, () -> barrierCompletedMessage(respondents, startTime));
break;
}
// If some are missing, quorum is enough
if (respondents.size() >= barrierMemberCount()) {
- log.log(Level.FINE, barrierCompletedMessage(respondents, startTime));
+ log.log(Level.FINE, () -> barrierCompletedMessage(respondents, startTime));
break;
}