summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2024-03-04 14:28:20 +0100
committerHenning Baldersheim <balder@yahoo-inc.com>2024-03-04 14:28:20 +0100
commit9f7542ea60c40e86ac6315f42b1c03b76d602f03 (patch)
tree6a801512411c3868daa576c5c299e1f6e2cc6821
parentaf13cee630e45bce9aab9d19956ef680947262fb (diff)
Avoid optional where it provides no value.
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/container/search/searchchain/SearchChain.java3
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java7
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/search/SearchNode.java23
-rw-r--r--config-model/src/test/java/com/yahoo/vespa/model/search/test/SearchNodeTest.java4
4 files changed, 16 insertions, 21 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/search/searchchain/SearchChain.java b/config-model/src/main/java/com/yahoo/vespa/model/container/search/searchchain/SearchChain.java
index 6f9e72117c8..0a8ae69ccf0 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/container/search/searchchain/SearchChain.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/container/search/searchchain/SearchChain.java
@@ -5,7 +5,6 @@ import com.yahoo.component.chain.model.ChainSpecification;
import com.yahoo.search.searchchain.model.federation.FederationOptions;
import com.yahoo.vespa.model.container.component.chain.Chain;
-import java.util.Collections;
import java.util.List;
/**
@@ -25,7 +24,7 @@ public class SearchChain extends Chain<Searcher<?>> {
//A list of documents types that this search chain provides results for, empty if unknown
public List<String> getDocumentTypes() {
- return Collections.emptyList();
+ return List.of();
}
@Override
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java
index a44ce3a3013..fc5b5c25e6d 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java
@@ -70,7 +70,7 @@ public class ContentSearchCluster extends TreeConfigProducer<AnyConfigProducer>
private final List<SearchNode> nonIndexed = new ArrayList<>();
private final Map<StorageGroup, NodeSpec> groupToSpecMap = new LinkedHashMap<>();
- private Optional<ResourceLimits> resourceLimits = Optional.empty();
+ private ResourceLimits resourceLimits;
private final ProtonConfig.Indexing.Optimize.Enum feedSequencerType;
private final double defaultFeedConcurrency;
private final double defaultFeedNiceness;
@@ -292,7 +292,6 @@ public class ContentSearchCluster extends TreeConfigProducer<AnyConfigProducer>
NodeSpec spec = getNextSearchNodeSpec(parentGroup);
SearchNode searchNode;
TransactionLogServer tls;
- Optional<Tuning> tuning = Optional.ofNullable(this.tuning);
if (element == null) {
searchNode = SearchNode.create(parent, "" + node.getDistributionKey(), node.getDistributionKey(), spec,
clusterName, node, flushOnShutdown, tuning, resourceLimits, deployState.isHosted(),
@@ -334,7 +333,7 @@ public class ContentSearchCluster extends TreeConfigProducer<AnyConfigProducer>
public void setTuning(Tuning tuning) { this.tuning = tuning; }
private void setResourceLimits(ResourceLimits resourceLimits) {
- this.resourceLimits = Optional.of(resourceLimits);
+ this.resourceLimits = resourceLimits;
}
public boolean usesHierarchicDistribution() {
@@ -429,7 +428,7 @@ public class ContentSearchCluster extends TreeConfigProducer<AnyConfigProducer>
int numDocumentDbs = builder.documentdb.size();
builder.initialize(new ProtonConfig.Initialize.Builder().threads(numDocumentDbs + 1));
- resourceLimits.ifPresent(limits -> limits.getConfig(builder));
+ if (resourceLimits != null) resourceLimits.getConfig(builder);
if (tuning != null) {
tuning.getConfig(builder);
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/search/SearchNode.java b/config-model/src/main/java/com/yahoo/vespa/model/search/SearchNode.java
index 869753daf06..61933c10504 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/search/SearchNode.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/search/SearchNode.java
@@ -63,8 +63,8 @@ public class SearchNode extends AbstractService implements
private final String clusterName;
private TransactionLogServer tls;
private final AbstractService serviceLayerService;
- private final Optional<Tuning> tuning;
- private final Optional<ResourceLimits> resourceLimits;
+ private final Tuning tuning;
+ private final ResourceLimits resourceLimits;
private final double fractionOfMemoryReserved;
public static class Builder extends VespaDomBuilder.DomConfigProducerBuilderBase<SearchNode> {
@@ -74,12 +74,12 @@ public class SearchNode extends AbstractService implements
private final String clusterName;
private final ContentNode contentNode;
private final boolean flushOnShutdown;
- private final Optional<Tuning> tuning;
- private final Optional<ResourceLimits> resourceLimits;
+ private final Tuning tuning;
+ private final ResourceLimits resourceLimits;
private final double fractionOfMemoryReserved;
public Builder(String name, NodeSpec nodeSpec, String clusterName, ContentNode node,
- boolean flushOnShutdown, Optional<Tuning> tuning, Optional<ResourceLimits> resourceLimits,
+ boolean flushOnShutdown, Tuning tuning, ResourceLimits resourceLimits,
double fractionOfMemoryReserved) {
this.name = name;
this.nodeSpec = nodeSpec;
@@ -103,7 +103,7 @@ public class SearchNode extends AbstractService implements
public static SearchNode create(TreeConfigProducer<?> parent, String name, int distributionKey, NodeSpec nodeSpec,
String clusterName, AbstractService serviceLayerService, boolean flushOnShutdown,
- Optional<Tuning> tuning, Optional<ResourceLimits> resourceLimits,
+ Tuning tuning, ResourceLimits resourceLimits,
boolean isHostedVespa, double fractionOfMemoryReserved,
ModelContext.FeatureFlags featureFlags) {
SearchNode node = new SearchNode(parent, name, distributionKey, nodeSpec, clusterName, serviceLayerService, flushOnShutdown,
@@ -119,7 +119,7 @@ public class SearchNode extends AbstractService implements
private SearchNode(TreeConfigProducer<?> parent, String name, int distributionKey, NodeSpec nodeSpec,
String clusterName, AbstractService serviceLayerService, boolean flushOnShutdown,
- Optional<Tuning> tuning, Optional<ResourceLimits> resourceLimits, boolean isHostedVespa,
+ Tuning tuning, ResourceLimits resourceLimits, boolean isHostedVespa,
double fractionOfMemoryReserved) {
super(parent, name);
this.distributionKey = distributionKey;
@@ -272,13 +272,12 @@ public class SearchNode extends AbstractService implements
}
Optional<NodeResources> nodeResources = getSpecifiedNodeResources();
if (nodeResources.isPresent()) {
- var nodeResourcesTuning = new NodeResourcesTuning(nodeResources.get(),
- tuning.map(Tuning::threadsPerSearch).orElse(1),
- fractionOfMemoryReserved);
+ int threadsPerSearch = tuning != null ? tuning.threadsPerSearch() : 1;
+ var nodeResourcesTuning = new NodeResourcesTuning(nodeResources.get(), threadsPerSearch, fractionOfMemoryReserved);
nodeResourcesTuning.getConfig(builder);
- tuning.ifPresent(t -> t.getConfig(builder));
- resourceLimits.ifPresent(l -> l.getConfig(builder));
+ if (tuning != null) tuning.getConfig(builder);
+ if (resourceLimits != null) resourceLimits.getConfig(builder);
}
}
diff --git a/config-model/src/test/java/com/yahoo/vespa/model/search/test/SearchNodeTest.java b/config-model/src/test/java/com/yahoo/vespa/model/search/test/SearchNodeTest.java
index 3a39e55b46b..bc981c3de7c 100644
--- a/config-model/src/test/java/com/yahoo/vespa/model/search/test/SearchNodeTest.java
+++ b/config-model/src/test/java/com/yahoo/vespa/model/search/test/SearchNodeTest.java
@@ -15,8 +15,6 @@ import com.yahoo.vespa.model.search.SearchNode;
import com.yahoo.vespa.model.search.TransactionLogServer;
import org.junit.jupiter.api.Test;
-import java.util.Optional;
-
import static org.junit.jupiter.api.Assertions.*;
/**
@@ -49,7 +47,7 @@ public class SearchNodeTest {
private static SearchNode createSearchNode(MockRoot root, String name, int distributionKey, NodeSpec nodeSpec,
boolean flushOnShutDown, boolean isHosted, ModelContext.FeatureFlags featureFlags) {
return SearchNode.create(root, name, distributionKey, nodeSpec, "mycluster", null, flushOnShutDown,
- Optional.empty(), Optional.empty(), isHosted, 0.0, featureFlags);
+ null, null, isHosted, 0.0, featureFlags);
}
private static SearchNode createSearchNode(MockRoot root) {