diff options
author | Harald Musum <musum@yahooinc.com> | 2021-11-18 07:59:19 +0100 |
---|---|---|
committer | Harald Musum <musum@yahooinc.com> | 2021-11-18 07:59:19 +0100 |
commit | 998562ee62fb14a2e0ad0930007c1cfbf7c66ea2 (patch) | |
tree | 46f7028a5cd48cd081981ac80b352ce1f1f33c0a /configserver | |
parent | 65fe0e9b45b10e9b3663a729969473d84f3b5edd (diff) |
Reload super model before reloading config
Some requests depend on supermodel being updated when config changes,
try reloading it first.
Diffstat (limited to 'configserver')
-rw-r--r-- | configserver/src/main/java/com/yahoo/vespa/config/server/rpc/RpcServer.java | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/rpc/RpcServer.java b/configserver/src/main/java/com/yahoo/vespa/config/server/rpc/RpcServer.java index 00255a0a264..6ea32a32dd1 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/rpc/RpcServer.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/rpc/RpcServer.java @@ -21,7 +21,6 @@ import com.yahoo.jrt.StringValue; import com.yahoo.jrt.Supervisor; import com.yahoo.jrt.Target; import com.yahoo.jrt.Transport; -import java.util.logging.Level; import com.yahoo.vespa.config.ErrorCode; import com.yahoo.vespa.config.JRTMethods; import com.yahoo.vespa.config.protocol.ConfigResponse; @@ -61,6 +60,7 @@ import java.util.concurrent.RejectedExecutionException; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicLong; +import java.util.logging.Level; import java.util.logging.Logger; import java.util.stream.Stream; @@ -253,6 +253,7 @@ public class RpcServer implements Runnable, ReloadListener, TenantListener { boolean hasNewerGeneration(ApplicationId id, long generation) { return getState(id).getActiveGeneration() > generation; } + /** * Checks all delayed responses for config changes and waits until all has been answered. * This method should be called when config is reloaded in the server. @@ -262,8 +263,8 @@ public class RpcServer implements Runnable, ReloadListener, TenantListener { ApplicationId applicationId = applicationSet.getId(); ApplicationState state = getState(applicationId); state.setActiveGeneration(applicationSet.getApplicationGeneration()); - configReloaded(applicationId); reloadSuperModel(applicationSet); + configReloaded(applicationId); } private void reloadSuperModel(ApplicationSet applicationSet) { |