diff options
author | Arnstein Ressem <aressem@gmail.com> | 2022-07-05 19:48:26 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-05 19:48:26 +0200 |
commit | 787c43c5361e11fdc9f86ec47a722f3941442837 (patch) | |
tree | b7211f046f4d846b66149decf58bfa56ce6dbb5d /config-model/src/main/java/com | |
parent | e9bc0150adc5bb151bba0da69cb28fbe6bda145d (diff) |
Revert "Revert "Revert "GC long gone config"""
Diffstat (limited to 'config-model/src/main/java/com')
4 files changed, 38 insertions, 4 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/Container.java b/config-model/src/main/java/com/yahoo/vespa/model/container/Container.java index cbfe2826a76..4b1c03a170c 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/Container.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/Container.java @@ -1,6 +1,7 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.model.container; +import com.yahoo.config.application.api.DeployLogger; import com.yahoo.config.model.api.ModelContext; import com.yahoo.config.model.api.container.ContainerServiceType; import com.yahoo.config.model.deploy.DeployState; @@ -147,6 +148,19 @@ public abstract class Container extends AbstractService implements return (parent instanceof ContainerCluster) ? ((ContainerCluster<?>) parent).getHttp() : null; } + public JettyHttpServer getDefaultHttpServer() { + return defaultHttpServer; + } + + public JettyHttpServer getHttpServer() { + Http http = getHttp(); + if (http == null) { + return defaultHttpServer; + } else { + return http.getHttpServer().orElse(null); + } + } + /** Returns the index of this node. The index of a given node is stable through changes with best effort. */ public final int index() { return index; } @@ -367,7 +381,7 @@ public abstract class Container extends AbstractService implements @Override public void getConfig(ContainerMbusConfig.Builder builder) { - builder.port(getMessagingPort()); + builder.enabled(messageBusEnabled()).port(getMessagingPort()); } @Override diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java index 6b6192a04ef..5adea6d50e8 100755 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java @@ -412,6 +412,8 @@ public abstract class ContainerCluster<CONTAINER extends Container> @Override public void getConfig(DocumentmanagerConfig.Builder builder) { + if (containerDocproc != null && containerDocproc.isCompressDocuments()) + builder.enablecompression(true); if (containerDocumentApi != null) builder.ignoreundefinedfields(containerDocumentApi.ignoreUndefinedFields()); } @@ -537,7 +539,9 @@ public abstract class ContainerCluster<CONTAINER extends Container> @Override public void getConfig(IlscriptsConfig.Builder builder) { - for (SearchCluster searchCluster : Content.getSearchClusters(getRoot().configModelRepo())) { + List<SearchCluster> searchClusters = new ArrayList<>(); + searchClusters.addAll(Content.getSearchClusters(getRoot().configModelRepo())); + for (SearchCluster searchCluster : searchClusters) { searchCluster.getConfig(builder); } } @@ -609,6 +613,8 @@ public abstract class ContainerCluster<CONTAINER extends Container> public void setEnvironmentVars(String environmentVars) { this.environmentVars = environmentVars; } + public String getEnvironmentVars() { return environmentVars; } + public Optional<String> getJvmGCOptions() { return Optional.ofNullable(jvmGCOptions); } public final void setRpcServerEnabled(boolean rpcServerEnabled) { this.rpcServerEnabled = rpcServerEnabled; } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/docproc/ContainerDocproc.java b/config-model/src/main/java/com/yahoo/vespa/model/container/docproc/ContainerDocproc.java index f2233680e9b..8be02f77ab3 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/docproc/ContainerDocproc.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/docproc/ContainerDocproc.java @@ -35,7 +35,7 @@ public class ContainerDocproc extends ContainerSubsystem<DocprocChains> private Map<Pair<String, String>, String> fieldNameSchemaMap = new HashMap<>(); public ContainerDocproc(ContainerCluster cluster, DocprocChains chains) { - this(cluster, chains, new Options( null, null, null, null, null, null)); + this(cluster, chains, new Options(false, null, null, null, null, null, null)); } public ContainerDocproc(ContainerCluster cluster, DocprocChains chains, Options options) { @@ -60,6 +60,10 @@ public class ContainerDocproc extends ContainerSubsystem<DocprocChains> } } + public boolean isCompressDocuments() { + return options.compressDocuments; + } + public boolean isPreferLocalNode() { return preferLocalNode; } @@ -71,6 +75,8 @@ public class ContainerDocproc extends ContainerSubsystem<DocprocChains> @Override public void getConfig(ContainerMbusConfig.Builder builder) { builder.maxpendingcount(getMaxMessagesInQueue()); + if (getMaxQueueMbSize() != null) + builder.maxpendingsize(getMaxQueueMbSize()); //yes, this shall be set in megabytes. } private int getMaxMessagesInQueue() { @@ -131,6 +137,8 @@ public class ContainerDocproc extends ContainerSubsystem<DocprocChains> } public static class Options { + // Whether or not to compress documents after processing them. + public final boolean compressDocuments; public final Integer maxMessagesInQueue; public final Integer maxQueueMbSize; @@ -140,7 +148,8 @@ public class ContainerDocproc extends ContainerSubsystem<DocprocChains> public final Double documentExpansionFactor; public final Integer containerCoreMemory; - public Options(Integer maxMessagesInQueue, Integer maxQueueMbSize, Integer maxQueueTimeMs, Double maxConcurrentFactor, Double documentExpansionFactor, Integer containerCoreMemory) { + public Options(boolean compressDocuments, Integer maxMessagesInQueue, Integer maxQueueMbSize, Integer maxQueueTimeMs, Double maxConcurrentFactor, Double documentExpansionFactor, Integer containerCoreMemory) { + this.compressDocuments = compressDocuments; this.maxMessagesInQueue = maxMessagesInQueue; this.maxQueueMbSize = maxQueueMbSize; this.maxQueueTimeMs = maxQueueTimeMs; diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/xml/DocprocOptionsBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/container/xml/DocprocOptionsBuilder.java index e0dffca2bc5..1239cbf9bdc 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/xml/DocprocOptionsBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/xml/DocprocOptionsBuilder.java @@ -10,6 +10,7 @@ import org.w3c.dom.Element; public class DocprocOptionsBuilder { public static ContainerDocproc.Options build(Element spec) { return new ContainerDocproc.Options( + getCompression(spec), getMaxMessagesInQueue(spec), getSizeInMegabytes(spec.getAttribute("maxqueuebytesize")), getTime(spec.getAttribute("maxqueuewait")), @@ -24,6 +25,10 @@ public class DocprocOptionsBuilder { Integer.parseInt(integer); } + private static boolean getCompression(Element spec) { + return (spec.hasAttribute("compressdocuments") && spec.getAttribute("compressdocuments").equals("true")); + } + private static Double getFactor(String factor) { return factor == null || factor.trim().isEmpty() ? null : |