diff options
author | jonmv <venstad@gmail.com> | 2024-01-14 19:10:50 +0100 |
---|---|---|
committer | jonmv <venstad@gmail.com> | 2024-01-14 19:10:50 +0100 |
commit | 0d27096cc4af0df33498f7402015b6dea6ee0338 (patch) | |
tree | deafc88b84f401e5fad093491582ffe2f8cb92ef /configserver/src/main | |
parent | 201efca9429652d52ea9626e450c7eba63381bb3 (diff) |
Actually turn converged field false
Diffstat (limited to 'configserver/src/main')
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; } |