summaryrefslogtreecommitdiffstats
path: root/configserver
diff options
context:
space:
mode:
authorjonmv <venstad@gmail.com>2024-01-14 19:10:50 +0100
committerjonmv <venstad@gmail.com>2024-01-14 19:10:50 +0100
commit0d27096cc4af0df33498f7402015b6dea6ee0338 (patch)
treedeafc88b84f401e5fad093491582ffe2f8cb92ef /configserver
parent201efca9429652d52ea9626e450c7eba63381bb3 (diff)
Actually turn converged field false
Diffstat (limited to 'configserver')
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java5
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/application/ConfigConvergenceChecker.java16
2 files changed, 14 insertions, 7 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java b/configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java
index 2102a5a04b5..64e5f80d72c 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/ApplicationRepository.java
@@ -792,10 +792,7 @@ public class ApplicationRepository implements com.yahoo.config.provision.Deploye
Optional<Version> vespaVersion) {
ServiceListResponse response = convergeChecker.checkConvergenceForAllServices(getApplication(applicationId, vespaVersion), timeoutPerService);
if (response.converged && ! getPendingRestarts(applicationId).isEmpty())
- return new ServiceListResponse(response.services.stream().collect(toMap(service -> service.serviceInfo,
- service -> service.currentGeneration)),
- response.wantedGeneration,
- response.currentGeneration);
+ response = response.unconverged();
return response;
}
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/application/ConfigConvergenceChecker.java b/configserver/src/main/java/com/yahoo/vespa/config/server/application/ConfigConvergenceChecker.java
index 8b83055e1d0..c03cb7ade8c 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/application/ConfigConvergenceChecker.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/application/ConfigConvergenceChecker.java
@@ -360,11 +360,21 @@ public class ConfigConvergenceChecker extends AbstractComponent {
public final long currentGeneration;
public final boolean converged;
- public ServiceListResponse(Map<ServiceInfo, Long> services, long wantedGeneration, long currentGeneration) {
- services.forEach((key, value) -> this.services.add(new Service(key, value)));
+ private ServiceListResponse(List<Service> services, long wantedGeneration, long currentGeneration, boolean converged) {
+ this.services.addAll(services);
this.wantedGeneration = wantedGeneration;
this.currentGeneration = currentGeneration;
- this.converged = currentGeneration >= wantedGeneration;
+ this.converged = converged;
+ }
+ public ServiceListResponse(Map<ServiceInfo, Long> services, long wantedGeneration, long currentGeneration) {
+ this(services.entrySet().stream().map(entry -> new Service(entry.getKey(), entry.getValue())).toList(),
+ wantedGeneration,
+ currentGeneration,
+ currentGeneration >= wantedGeneration);
+ }
+
+ public ServiceListResponse unconverged() {
+ return new ServiceListResponse(services, wantedGeneration, currentGeneration, false);
}
public List<Service> services() { return services; }