aboutsummaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java/com/yahoo/config/model/ApplicationConfigProducerRoot.java
diff options
context:
space:
mode:
authorTor Brede Vekterli <vekterli@oath.com>2018-12-05 16:00:30 +0100
committerTor Brede Vekterli <vekterli@oath.com>2018-12-05 16:04:48 +0100
commitd29450ded189ee78657b0ae8778ae879df7a3b5f (patch)
treedc39c8ab36f2b3df5733e443dad0d7f10bcf27d3 /config-model/src/main/java/com/yahoo/config/model/ApplicationConfigProducerRoot.java
parent200663867930d081a49644c42f6090a926a327c3 (diff)
Add and use cross-cluster bucket space config
Adds a new config `AllClustersBucketSpacesConfig` which includes all document type to bucket space mappings across all configured content clusters. Inject this config into `RestApi` to ensure all changes to the mapping is observed. This also removes the remaining per-request config fetching during Document V1 visit ops.
Diffstat (limited to 'config-model/src/main/java/com/yahoo/config/model/ApplicationConfigProducerRoot.java')
-rw-r--r--config-model/src/main/java/com/yahoo/config/model/ApplicationConfigProducerRoot.java9
1 files changed, 9 insertions, 0 deletions
diff --git a/config-model/src/main/java/com/yahoo/config/model/ApplicationConfigProducerRoot.java b/config-model/src/main/java/com/yahoo/config/model/ApplicationConfigProducerRoot.java
index af9eba92a98..7be4b27860c 100644
--- a/config-model/src/main/java/com/yahoo/config/model/ApplicationConfigProducerRoot.java
+++ b/config-model/src/main/java/com/yahoo/config/model/ApplicationConfigProducerRoot.java
@@ -19,6 +19,7 @@ import com.yahoo.document.DocumenttypesConfig;
import com.yahoo.document.config.DocumentmanagerConfig;
import com.yahoo.documentapi.messagebus.protocol.DocumentrouteselectorpolicyConfig;
import com.yahoo.messagebus.MessagebusConfig;
+import com.yahoo.vespa.config.content.core.AllClustersBucketSpacesConfig;
import com.yahoo.vespa.configmodel.producers.DocumentManager;
import com.yahoo.vespa.configmodel.producers.DocumentTypes;
import com.yahoo.vespa.documentmodel.DocumentModel;
@@ -212,6 +213,14 @@ public class ApplicationConfigProducerRoot extends AbstractConfigProducer<Abstra
}
@Override
+ public void getConfig(AllClustersBucketSpacesConfig.Builder builder) {
+ VespaModel model = (VespaModel) getRoot();
+ for (ContentCluster cluster : model.getContentClusters().values()) {
+ builder.cluster(cluster.getName(), cluster.clusterBucketSpaceConfigBuilder());
+ }
+ }
+
+ @Override
public void getConfig(ModelConfig.Builder builder) {
builder.vespaVersion(vespaVersion.toFullString());
for (HostResource modelHost : getHostSystem().getHosts()) {