summaryrefslogtreecommitdiffstats
path: root/config-model/src/main
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2020-05-10 10:08:11 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2020-05-10 10:08:11 +0000
commit3f3a65829b28692527bdbbe6d8637ba47eb42dad (patch)
tree0a6e74dde226082a65e384ce72e7729186ce8332 /config-model/src/main
parent53de761f86f009f10fa51eba82c571edf60f3dfb (diff)
Control num response threads with flag
Diffstat (limited to 'config-model/src/main')
-rw-r--r--config-model/src/main/java/com/yahoo/config/model/deploy/TestProperties.java10
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/FileStorProducer.java15
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/StorageCluster.java2
3 files changed, 21 insertions, 6 deletions
diff --git a/config-model/src/main/java/com/yahoo/config/model/deploy/TestProperties.java b/config-model/src/main/java/com/yahoo/config/model/deploy/TestProperties.java
index 55c3f98f0f3..4dbfc8f7a8f 100644
--- a/config-model/src/main/java/com/yahoo/config/model/deploy/TestProperties.java
+++ b/config-model/src/main/java/com/yahoo/config/model/deploy/TestProperties.java
@@ -46,6 +46,7 @@ public class TestProperties implements ModelContext.Properties {
private double softStartSeconds = 0.0;
private double threadPoolSizeFactor = 0.0;
private double queueSizeFactor = 0.0;
+ private int defaultNumResponseThreads = 0;
private Optional<EndpointCertificateSecrets> endpointCertificateSecrets = Optional.empty();
private AthenzDomain athenzDomain;
@@ -81,6 +82,10 @@ public class TestProperties implements ModelContext.Properties {
return softStartSeconds;
}
+ @Override public int defaultNumResponseThreads() {
+ return defaultNumResponseThreads;
+ }
+
@Override public double defaultTopKProbability() { return topKProbability; }
@Override public boolean useDistributorBtreeDb() { return useDistributorBtreeDb; }
@Override public boolean useThreePhaseUpdates() { return useThreePhaseUpdates; }
@@ -101,6 +106,11 @@ public class TestProperties implements ModelContext.Properties {
return this;
}
+ public TestProperties setDefaultNumResponseThreads(int numResponseThreads) {
+ defaultNumResponseThreads = numResponseThreads;
+ return this;
+ }
+
public TestProperties setUseThreePhaseUpdates(boolean useThreePhaseUpdates) {
this.useThreePhaseUpdates = useThreePhaseUpdates;
return this;
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/FileStorProducer.java b/config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/FileStorProducer.java
index 785088e96fc..ddacc8f9410 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/FileStorProducer.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/FileStorProducer.java
@@ -11,8 +11,8 @@ import com.yahoo.vespa.model.content.cluster.ContentCluster;
public class FileStorProducer implements StorFilestorConfig.Producer {
public static class Builder {
- protected FileStorProducer build(ContentCluster parent, ModelElement clusterElem) {
- return new FileStorProducer(parent, getThreads(clusterElem));
+ protected FileStorProducer build(ContentCluster parent, Integer numResonseThreads, ModelElement clusterElem) {
+ return new FileStorProducer(parent, getThreads(clusterElem), numResonseThreads);
}
private Integer getThreads(ModelElement clusterElem) {
@@ -41,12 +41,14 @@ public class FileStorProducer implements StorFilestorConfig.Producer {
}
}
- private Integer numThreads;
- private ContentCluster cluster;
+ private final Integer numThreads;
+ private final ContentCluster cluster;
+ private final Integer numResponseThreads;
- public FileStorProducer(ContentCluster parent, Integer numThreads) {
+ public FileStorProducer(ContentCluster parent, Integer numThreads, Integer numResponseThreads) {
this.numThreads = numThreads;
this.cluster = parent;
+ this.numResponseThreads = numResponseThreads;
}
@Override
@@ -54,6 +56,9 @@ public class FileStorProducer implements StorFilestorConfig.Producer {
if (numThreads != null) {
builder.num_threads(numThreads);
}
+ if (numResponseThreads != null) {
+ builder.num_response_threads(numResponseThreads);
+ }
builder.enable_multibit_split_optimalization(cluster.getPersistence().enableMultiLevelSplitting());
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/StorageCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/StorageCluster.java
index 091e82a9c76..c97b4c50484 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/StorageCluster.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/StorageCluster.java
@@ -36,7 +36,7 @@ public class StorageCluster extends AbstractConfigProducer<StorageNode>
return new StorageCluster(ancestor,
ContentCluster.getClusterName(clusterElem),
- new FileStorProducer.Builder().build(cluster, clusterElem),
+ new FileStorProducer.Builder().build(cluster, deployState.getProperties().defaultNumResponseThreads(), clusterElem),
new IntegrityCheckerProducer.Builder().build(cluster, clusterElem),
new StorServerProducer.Builder().build(clusterElem),
new StorVisitorProducer.Builder().build(clusterElem),