diff options
author | Jon Marius Venstad <jonmv@users.noreply.github.com> | 2022-01-14 17:57:43 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-14 17:57:43 +0100 |
commit | 810da357155a349884b862de87e18de87ed54b35 (patch) | |
tree | aba2f3b711660a193686a8567ac3599876028f54 /config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller | |
parent | c0a980df17141c55e19dfd98c8610f42c79029a0 (diff) |
Revert "Jonmv/reapply zk changes 2"
Diffstat (limited to 'config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller')
-rw-r--r-- | config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerCluster.java | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerCluster.java index 0b99496a9b4..6e6f027b520 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerCluster.java @@ -50,12 +50,14 @@ public class ClusterControllerCluster extends AbstractConfigProducer<ClusterCont public void getConfig(ZookeeperServerConfig.Builder builder) { builder.clientPort(ZK_CLIENT_PORT); builder.juteMaxBuffer(1024 * 1024); // 1 Mb should be more than enough for cluster controller + boolean oldQuorumExists = containerCluster.getContainers().stream() // More than half the previous hosts must be present in the new config for quorum to persist. + .filter(container -> previousHosts.contains(container.getHostName())) // Set intersection is symmetric. + .count() > previousHosts.size() / 2; for (ClusterControllerContainer container : containerCluster.getContainers()) { ZookeeperServerConfig.Server.Builder serverBuilder = new ZookeeperServerConfig.Server.Builder(); serverBuilder.hostname(container.getHostName()); serverBuilder.id(container.index()); - serverBuilder.joining( ! previousHosts.isEmpty() && ! previousHosts.contains(container.getHostName())); - serverBuilder.retired(container.isRetired()); + serverBuilder.joining(oldQuorumExists && ! previousHosts.contains(container.getHostName())); builder.server(serverBuilder); } } |