diff options
Diffstat (limited to 'configserver')
-rw-r--r-- | configserver/src/main/java/com/yahoo/vespa/config/server/application/Application.java | 22 | ||||
-rw-r--r-- | configserver/src/main/java/com/yahoo/vespa/config/server/monitoring/Metrics.java | 5 |
2 files changed, 15 insertions, 12 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/application/Application.java b/configserver/src/main/java/com/yahoo/vespa/config/server/application/Application.java index 97acfd9b549..2133850e674 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/application/Application.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/application/Application.java @@ -109,25 +109,25 @@ public class Application implements ModelResult { ConfigCacheKey cacheKey = new ConfigCacheKey(configKey, defMd5); log.log(Level.FINE, () -> TenantRepository.logPre(getId()) + ("Resolving config " + cacheKey)); + ConfigResponse config; if (useCache(req)) { - ConfigResponse config = cache.get(cacheKey); + config = cache.get(cacheKey); if (config != null) { log.log(Level.FINE, () -> TenantRepository.logPre(getId()) + ("Found config " + cacheKey + " in cache")); - metricUpdater.incrementProcTime(System.currentTimeMillis() - start); - return config; + } else { + config = createConfigResponse(configKey, req, responseFactory); + cache.put(cacheKey, config, config.getConfigMd5()); + metricUpdater.setCacheConfigElems(cache.configElems()); + metricUpdater.setCacheChecksumElems(cache.checkSumElems()); } - config = createConfigResponse(configKey, req, responseFactory); - cache.put(cacheKey, config, config.getConfigMd5()); - metricUpdater.setCacheConfigElems(cache.configElems()); - metricUpdater.setCacheChecksumElems(cache.checkSumElems()); - return config; } else { - return createConfigResponse(configKey, req, responseFactory); + config = createConfigResponse(configKey, req, responseFactory); } + metricUpdater.incrementProcTime(System.currentTimeMillis() - start); + return config; } private ConfigResponse createConfigResponse(ConfigKey<?> configKey, GetConfigRequest req, ConfigResponseFactory responseFactory) { - long start = System.currentTimeMillis(); ConfigDefinition def = getTargetDef(req); if (def == null) { metricUpdater.incrementFailedRequests(); @@ -137,7 +137,7 @@ public class Application implements ModelResult { var payload = createPayload(configKey, def); var response = responseFactory.createResponse(payload.getFirst(), applicationGeneration, payload.getSecond()); - metricUpdater.incrementProcTime(System.currentTimeMillis() - start); + return response; } diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/monitoring/Metrics.java b/configserver/src/main/java/com/yahoo/vespa/config/server/monitoring/Metrics.java index dca58665f57..4dd647adca3 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/monitoring/Metrics.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/monitoring/Metrics.java @@ -10,11 +10,14 @@ import com.yahoo.config.provision.TenantName; import com.yahoo.container.jdisc.config.HealthMonitorConfig; import com.yahoo.docproc.jdisc.metric.NullMetric; import com.yahoo.jdisc.Metric; + +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.Optional; import java.util.logging.Level; import com.yahoo.statistics.Statistics; import com.yahoo.statistics.Counter; -import java.util.*; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ExecutorService; import java.util.concurrent.ScheduledExecutorService; |