diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2024-03-05 13:54:31 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-05 13:54:31 +0100 |
commit | 17ea12b29812c86df305708707618324c2d9a370 (patch) | |
tree | b04f4aacb7a7fcca5f01990c77b686da0f9383f5 /config-model | |
parent | 3a27b0dbb478cb1a563b4eb1c6b689426d02cb88 (diff) |
Revert "Balder/let document database provide vsm config too"
Diffstat (limited to 'config-model')
6 files changed, 259 insertions, 139 deletions
diff --git a/config-model/src/main/java/com/yahoo/schema/derived/AttributeFields.java b/config-model/src/main/java/com/yahoo/schema/derived/AttributeFields.java index e747235dc3c..57e5097556a 100644 --- a/config-model/src/main/java/com/yahoo/schema/derived/AttributeFields.java +++ b/config-model/src/main/java/com/yahoo/schema/derived/AttributeFields.java @@ -16,6 +16,7 @@ import java.util.Collection; import java.util.Collections; import java.util.Iterator; import java.util.Map; +import java.util.stream.Collectors; import static com.yahoo.schema.document.ComplexAttributeFieldUtils.isArrayOfSimpleStruct; import static com.yahoo.schema.document.ComplexAttributeFieldUtils.isMapOfPrimitiveType; 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 cd3103d20ab..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 @@ -398,8 +398,9 @@ public class ContentSearchCluster extends TreeConfigProducer<AnyConfigProducer> if (hasIndexingModeStreaming(type)) { hasAnyNonIndexedCluster = true; - findStreamingCluster(docTypeName).get().fillDocumentDBConfig(type.getFullName().getName(), ddbB); - ddbB.mode(ProtonConfig.Documentdb.Mode.Enum.STREAMING); + ddbB.inputdoctypename(type.getFullName().getName()) + .configid(findStreamingCluster(docTypeName).get().getDocumentDBConfigId()) + .mode(ProtonConfig.Documentdb.Mode.Enum.STREAMING); } else if (hasIndexingModeIndexed(type)) { getIndexed().fillDocumentDBConfig(type.getFullName().getName(), ddbB); } else { diff --git a/config-model/src/main/java/com/yahoo/vespa/model/search/DocumentDatabase.java b/config-model/src/main/java/com/yahoo/vespa/model/search/DocumentDatabase.java index 32ac5d0f4ed..1494eae7426 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/search/DocumentDatabase.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/search/DocumentDatabase.java @@ -15,8 +15,6 @@ import com.yahoo.vespa.config.search.core.OnnxModelsConfig; import com.yahoo.vespa.config.search.core.RankingConstantsConfig; import com.yahoo.vespa.config.search.core.RankingExpressionsConfig; import com.yahoo.vespa.config.search.summary.JuniperrcConfig; -import com.yahoo.vespa.config.search.vsm.VsmfieldsConfig; -import com.yahoo.vespa.config.search.vsm.VsmsummaryConfig; import com.yahoo.vespa.configdefinition.IlscriptsConfig; /** @@ -36,10 +34,7 @@ public class DocumentDatabase extends AnyConfigProducer implements JuniperrcConfig.Producer, SummaryConfig.Producer, ImportedFieldsConfig.Producer, - SchemaInfoConfig.Producer, - VsmsummaryConfig.Producer, - VsmfieldsConfig.Producer -{ + SchemaInfoConfig.Producer { private final String schemaName; private final DerivedConfiguration derivedCfg; @@ -61,19 +56,41 @@ public class DocumentDatabase extends AnyConfigProducer implements public DerivedConfiguration getDerivedConfiguration() { return derivedCfg; } - @Override public void getConfig(IndexInfoConfig.Builder builder) { derivedCfg.getIndexInfo().getConfig(builder); } - @Override public void getConfig(IlscriptsConfig.Builder builder) { derivedCfg.getIndexingScript().getConfig(builder); } - @Override public void getConfig(AttributesConfig.Builder builder) { derivedCfg.getConfig(builder); } - @Override public void getConfig(RankProfilesConfig.Builder builder) { derivedCfg.getRankProfileList().getConfig(builder); } - @Override public void getConfig(RankingExpressionsConfig.Builder builder) { derivedCfg.getRankProfileList().getConfig(builder); } - @Override public void getConfig(RankingConstantsConfig.Builder builder) { derivedCfg.getRankProfileList().getConfig(builder); } - @Override public void getConfig(OnnxModelsConfig.Builder builder) { derivedCfg.getRankProfileList().getConfig(builder); } - @Override public void getConfig(IndexschemaConfig.Builder builder) { derivedCfg.getIndexSchema().getConfig(builder); } - @Override public void getConfig(JuniperrcConfig.Builder builder) { derivedCfg.getJuniperrc().getConfig(builder); } - @Override public void getConfig(SummaryConfig.Builder builder) { derivedCfg.getSummaries().getConfig(builder); } - @Override public void getConfig(ImportedFieldsConfig.Builder builder) { derivedCfg.getImportedFields().getConfig(builder); } - @Override public void getConfig(SchemaInfoConfig.Builder builder) { derivedCfg.getSchemaInfo().getConfig(builder); } - @Override public void getConfig(VsmsummaryConfig.Builder builder) { derivedCfg.getVsmSummary().getConfig(builder); } - @Override public void getConfig(VsmfieldsConfig.Builder builder) { derivedCfg.getVsmFields().getConfig(builder); } + + @Override + public void getConfig(IndexInfoConfig.Builder builder) { derivedCfg.getIndexInfo().getConfig(builder); } + + @Override + public void getConfig(IlscriptsConfig.Builder builder) { derivedCfg.getIndexingScript().getConfig(builder); } + + @Override + public void getConfig(AttributesConfig.Builder builder) { derivedCfg.getConfig(builder); } + + @Override + public void getConfig(RankProfilesConfig.Builder builder) { derivedCfg.getRankProfileList().getConfig(builder); } + + @Override + public void getConfig(RankingExpressionsConfig.Builder builder) { derivedCfg.getRankProfileList().getConfig(builder); } + + @Override + public void getConfig(RankingConstantsConfig.Builder builder) { derivedCfg.getRankProfileList().getConfig(builder); } + + @Override + public void getConfig(OnnxModelsConfig.Builder builder) { derivedCfg.getRankProfileList().getConfig(builder); } + + @Override + public void getConfig(IndexschemaConfig.Builder builder) { derivedCfg.getIndexSchema().getConfig(builder); } + + @Override + public void getConfig(JuniperrcConfig.Builder builder) { derivedCfg.getJuniperrc().getConfig(builder); } + + @Override + public void getConfig(SummaryConfig.Builder builder) { derivedCfg.getSummaries().getConfig(builder); } + + @Override + public void getConfig(ImportedFieldsConfig.Builder builder) { derivedCfg.getImportedFields().getConfig(builder); } + + @Override + public void getConfig(SchemaInfoConfig.Builder builder) { derivedCfg.getSchemaInfo().getConfig(builder); } } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/search/IndexedSearchCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/search/IndexedSearchCluster.java index b51185ddac2..e20c294d135 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/search/IndexedSearchCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/search/IndexedSearchCluster.java @@ -1,22 +1,31 @@ // Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.model.search; +import com.yahoo.config.ConfigInstance; import com.yahoo.config.model.api.ModelContext; import com.yahoo.config.model.deploy.DeployState; import com.yahoo.config.model.producer.AnyConfigProducer; import com.yahoo.config.model.producer.TreeConfigProducer; +import com.yahoo.prelude.fastsearch.DocumentdbInfoConfig; import com.yahoo.schema.DocumentOnlySchema; import com.yahoo.schema.derived.DerivedConfiguration; import com.yahoo.schema.derived.SchemaInfo; +import com.yahoo.search.config.IndexInfoConfig; +import com.yahoo.search.config.SchemaInfoConfig; +import com.yahoo.vespa.config.search.AttributesConfig; import com.yahoo.vespa.config.search.DispatchConfig; import com.yahoo.vespa.config.search.DispatchConfig.DistributionPolicy; import com.yahoo.vespa.config.search.DispatchNodesConfig; +import com.yahoo.vespa.config.search.RankProfilesConfig; +import com.yahoo.vespa.config.search.core.ProtonConfig; +import com.yahoo.vespa.configdefinition.IlscriptsConfig; import com.yahoo.vespa.model.content.DispatchTuning; import com.yahoo.vespa.model.content.Redundancy; import com.yahoo.vespa.model.content.SearchCoverage; import java.util.ArrayList; import java.util.Collections; +import java.util.LinkedList; import java.util.List; /** @@ -26,9 +35,12 @@ public class IndexedSearchCluster extends SearchCluster implements DispatchConfig.Producer, DispatchNodesConfig.Producer { + private Tuning tuning; private SearchCoverage searchCoverage; + private final List<DocumentDatabase> documentDbs = new LinkedList<>(); + private final Redundancy.Provider redundancyProvider; private final List<SearchNode> searchNodes = new ArrayList<>(); @@ -60,20 +72,80 @@ public class IndexedSearchCluster extends SearchCluster implements } public Tuning getTuning() { return tuning; } + public void fillDocumentDBConfig(String documentType, ProtonConfig.Documentdb.Builder builder) { + for (DocumentDatabase sdoc : documentDbs) { + if (sdoc.getName().equals(documentType)) { + fillDocumentDBConfig(sdoc, builder); + return; + } + } + } + + private void fillDocumentDBConfig(DocumentDatabase sdoc, ProtonConfig.Documentdb.Builder ddbB) { + ddbB.inputdoctypename(sdoc.getSchemaName()) + .configid(sdoc.getConfigId()); + } + @Override public void deriveFromSchemas(DeployState deployState) { for (SchemaInfo spec : schemas().values()) { if (spec.fullSchema() instanceof DocumentOnlySchema) continue; - var db = new DocumentDatabase(this, spec.fullSchema().getName(), - new DerivedConfiguration(spec.fullSchema(), deployState, false)); - add(db); + DocumentDatabase db = new DocumentDatabase(this, spec.fullSchema().getName(), + new DerivedConfiguration(spec.fullSchema(), deployState, false)); + documentDbs.add(db); } } + @Override + public List<DocumentDatabase> getDocumentDbs() { + return documentDbs; + } + + public boolean hasDocumentDB(String name) { + for (DocumentDatabase db : documentDbs) { + if (db.getName().equals(name)) { + return true; + } + } + return false; + } + public void setSearchCoverage(SearchCoverage searchCoverage) { this.searchCoverage = searchCoverage; } + @Override + public void getConfig(DocumentdbInfoConfig.Builder builder) { + for (DocumentDatabase db : documentDbs) { + DocumentdbInfoConfig.Documentdb.Builder docDb = new DocumentdbInfoConfig.Documentdb.Builder(); + docDb.name(db.getName()); + builder.documentdb(docDb); + } + } + + @Override + public void getConfig(IndexInfoConfig.Builder builder) { + new Join(documentDbs).getConfig(builder); + } + + @Override + public void getConfig(SchemaInfoConfig.Builder builder) { + new Join(documentDbs).getConfig(builder); + } + + @Override + public void getConfig(IlscriptsConfig.Builder builder) { + new Join(documentDbs).getConfig(builder); + } + + public void getConfig(AttributesConfig.Builder builder) { + new Join(documentDbs).getConfig(builder); + } + + public void getConfig(RankProfilesConfig.Builder builder) { + new Join(documentDbs).getConfig(builder); + } + private static DistributionPolicy.Enum toDistributionPolicy(DispatchTuning.DispatchPolicy tuning) { return switch (tuning) { case ADAPTIVE: yield DistributionPolicy.ADAPTIVE; @@ -135,4 +207,44 @@ public class IndexedSearchCluster extends SearchCluster implements return "Indexing cluster '" + getClusterName() + "'"; } + /** + * Class used to retrieve combined configuration from multiple document databases. + * It is not a direct {@link ConfigInstance.Producer} of those configs, + * that is handled (by delegating to this) by the {@link IndexedSearchCluster} + * which is the parent to this. This avoids building the config multiple times. + */ + private record Join(List<DocumentDatabase> docDbs) { + + public void getConfig(IndexInfoConfig.Builder builder) { + for (DocumentDatabase docDb : docDbs) { + docDb.getConfig(builder); + } + } + + public void getConfig(SchemaInfoConfig.Builder builder) { + for (DocumentDatabase docDb : docDbs) { + docDb.getConfig(builder); + } + } + + public void getConfig(IlscriptsConfig.Builder builder) { + for (DocumentDatabase docDb : docDbs) { + docDb.getConfig(builder); + } + } + + public void getConfig(AttributesConfig.Builder builder) { + for (DocumentDatabase docDb : docDbs) { + docDb.getConfig(builder); + } + } + + public void getConfig(RankProfilesConfig.Builder builder) { + for (DocumentDatabase docDb : docDbs) { + docDb.getConfig(builder); + } + } + + } + } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/search/SearchCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/search/SearchCluster.java index 732b4ba0637..2ab11e31f59 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/search/SearchCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/search/SearchCluster.java @@ -1,7 +1,6 @@ // Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.model.search; -import com.yahoo.config.ConfigInstance; import com.yahoo.config.model.deploy.DeployState; import com.yahoo.search.config.SchemaInfoConfig; import com.yahoo.schema.derived.SchemaInfo; @@ -9,14 +8,12 @@ import com.yahoo.vespa.config.search.AttributesConfig; import com.yahoo.vespa.config.search.RankProfilesConfig; import com.yahoo.prelude.fastsearch.DocumentdbInfoConfig; import com.yahoo.search.config.IndexInfoConfig; -import com.yahoo.vespa.config.search.core.ProtonConfig; import com.yahoo.vespa.configdefinition.IlscriptsConfig; import com.yahoo.config.model.producer.AnyConfigProducer; import com.yahoo.config.model.producer.TreeConfigProducer; import java.util.Collections; import java.util.LinkedHashMap; -import java.util.LinkedList; import java.util.List; import java.util.Map; @@ -25,7 +22,8 @@ import java.util.Map; * * @author arnej27959 */ -public abstract class SearchCluster extends TreeConfigProducer<AnyConfigProducer> implements +public abstract class SearchCluster extends TreeConfigProducer<AnyConfigProducer> + implements DocumentdbInfoConfig.Producer, IndexInfoConfig.Producer, IlscriptsConfig.Producer, @@ -36,7 +34,6 @@ public abstract class SearchCluster extends TreeConfigProducer<AnyConfigProducer private Double queryTimeout; private Double visibilityDelay = 0.0; private final Map<String, SchemaInfo> schemas = new LinkedHashMap<>(); - private final List<DocumentDatabase> documentDbs = new LinkedList<>(); public SearchCluster(TreeConfigProducer<?> parent, String clusterName, int index) { super(parent, "cluster." + clusterName); @@ -47,18 +44,6 @@ public abstract class SearchCluster extends TreeConfigProducer<AnyConfigProducer public void add(SchemaInfo schema) { schemas.put(schema.name(), schema); } - public void add(DocumentDatabase db) { - documentDbs.add(db); - } - - public boolean hasDocumentDB(String name) { - for (DocumentDatabase db : documentDbs) { - if (db.getName().equals(name)) { - return true; - } - } - return false; - } /** Returns the schemas that should be active in this cluster. Note: These are added during processing. */ public Map<String, SchemaInfo> schemas() { return Collections.unmodifiableMap(schemas); } @@ -71,9 +56,7 @@ public abstract class SearchCluster extends TreeConfigProducer<AnyConfigProducer public abstract void deriveFromSchemas(DeployState deployState); /** Returns the document databases contained in this cluster */ - public List<DocumentDatabase> getDocumentDbs() { - return Collections.unmodifiableList(documentDbs); - } + public abstract List<DocumentDatabase> getDocumentDbs(); public String getClusterName() { return clusterName; } public final String getIndexingModeName() { return getIndexingMode().getName(); } @@ -88,50 +71,9 @@ public abstract class SearchCluster extends TreeConfigProducer<AnyConfigProducer public final void setClusterIndex(int index) { this.index = index; } public final int getClusterIndex() { return index; } - public void fillDocumentDBConfig(String documentType, ProtonConfig.Documentdb.Builder builder) { - for (DocumentDatabase sdoc : documentDbs) { - if (sdoc.getName().equals(documentType)) { - fillDocumentDBConfig(sdoc, builder); - return; - } - } - } - - protected void fillDocumentDBConfig(DocumentDatabase sdoc, ProtonConfig.Documentdb.Builder ddbB) { - ddbB.inputdoctypename(sdoc.getSchemaName()) - .configid(sdoc.getConfigId()); - } - - @Override - public void getConfig(DocumentdbInfoConfig.Builder builder) { - for (DocumentDatabase db : documentDbs) { - DocumentdbInfoConfig.Documentdb.Builder docDb = new DocumentdbInfoConfig.Documentdb.Builder(); - docDb.name(db.getName()); - builder.documentdb(docDb); - } - } - @Override - public void getConfig(IndexInfoConfig.Builder builder) { - new Join(documentDbs).getConfig(builder); - } + public abstract void getConfig(AttributesConfig.Builder builder); - @Override - public void getConfig(SchemaInfoConfig.Builder builder) { - new Join(documentDbs).getConfig(builder); - } - - @Override - public void getConfig(IlscriptsConfig.Builder builder) { - new Join(documentDbs).getConfig(builder); - } - - public void getConfig(AttributesConfig.Builder builder) { - new Join(documentDbs).getConfig(builder); - } - - public void getConfig(RankProfilesConfig.Builder builder) { - new Join(documentDbs).getConfig(builder); - } + public abstract void getConfig(RankProfilesConfig.Builder builder); @Override public String toString() { return "search-capable cluster '" + clusterName + "'"; } @@ -154,44 +96,4 @@ public abstract class SearchCluster extends TreeConfigProducer<AnyConfigProducer } } - /** - * Class used to retrieve combined configuration from multiple document databases. - * It is not a direct {@link ConfigInstance.Producer} of those configs, - * that is handled (by delegating to this) by the {@link IndexedSearchCluster} - * which is the parent to this. This avoids building the config multiple times. - */ - private record Join(List<DocumentDatabase> docDbs) { - - public void getConfig(IndexInfoConfig.Builder builder) { - for (DocumentDatabase docDb : docDbs) { - docDb.getConfig(builder); - } - } - - public void getConfig(SchemaInfoConfig.Builder builder) { - for (DocumentDatabase docDb : docDbs) { - docDb.getConfig(builder); - } - } - - public void getConfig(IlscriptsConfig.Builder builder) { - for (DocumentDatabase docDb : docDbs) { - docDb.getConfig(builder); - } - } - - public void getConfig(AttributesConfig.Builder builder) { - for (DocumentDatabase docDb : docDbs) { - docDb.getConfig(builder); - } - } - - public void getConfig(RankProfilesConfig.Builder builder) { - for (DocumentDatabase docDb : docDbs) { - docDb.getConfig(builder); - } - } - - } - } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/search/StreamingSearchCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/search/StreamingSearchCluster.java index ec5b2495a56..90f74af868b 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/search/StreamingSearchCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/search/StreamingSearchCluster.java @@ -4,11 +4,23 @@ package com.yahoo.vespa.model.search; import com.yahoo.config.model.deploy.DeployState; import com.yahoo.config.model.producer.AnyConfigProducer; import com.yahoo.config.model.producer.TreeConfigProducer; +import com.yahoo.prelude.fastsearch.DocumentdbInfoConfig; import com.yahoo.schema.Schema; import com.yahoo.schema.derived.AttributeFields; import com.yahoo.schema.derived.DerivedConfiguration; +import com.yahoo.search.config.IndexInfoConfig; +import com.yahoo.search.config.SchemaInfoConfig; import com.yahoo.vespa.config.search.AttributesConfig; -import com.yahoo.vespa.config.search.core.ProtonConfig; +import com.yahoo.vespa.config.search.RankProfilesConfig; +import com.yahoo.vespa.config.search.SummaryConfig; +import com.yahoo.vespa.config.search.core.OnnxModelsConfig; +import com.yahoo.vespa.config.search.core.RankingConstantsConfig; +import com.yahoo.vespa.config.search.core.RankingExpressionsConfig; +import com.yahoo.vespa.config.search.vsm.VsmfieldsConfig; +import com.yahoo.vespa.config.search.vsm.VsmsummaryConfig; +import com.yahoo.vespa.configdefinition.IlscriptsConfig; + +import java.util.List; /** * A search cluster of type streaming. @@ -16,27 +28,50 @@ import com.yahoo.vespa.config.search.core.ProtonConfig; * @author baldersheim * @author vegardh */ -public class StreamingSearchCluster extends SearchCluster +public class StreamingSearchCluster extends SearchCluster implements + RankProfilesConfig.Producer, + RankingConstantsConfig.Producer, + RankingExpressionsConfig.Producer, + OnnxModelsConfig.Producer, + VsmsummaryConfig.Producer, + VsmfieldsConfig.Producer, + SummaryConfig.Producer { + private final String storageRouteSpec; private final AttributesProducer attributesConfig; private final String docTypeName; + private DerivedConfiguration derivedConfig = null; + private DocumentDatabase derivedDb = null; - public StreamingSearchCluster(TreeConfigProducer<AnyConfigProducer> parent, String clusterName, int index, - String docTypeName, String storageRouteSpec) { + public StreamingSearchCluster(TreeConfigProducer<AnyConfigProducer> parent, + String clusterName, + int index, + String docTypeName, + String storageRouteSpec) { super(parent, clusterName, index); attributesConfig = new AttributesProducer(parent, docTypeName); this.docTypeName = docTypeName; this.storageRouteSpec = storageRouteSpec; } + public final String getDocumentDBConfigId() { + return attributesConfig.getConfigId(); + } @Override protected IndexingMode getIndexingMode() { return IndexingMode.STREAMING; } - public final String getStorageRouteSpec() { return storageRouteSpec; } + public final String getStorageRouteSpec() { return storageRouteSpec; } public String getDocTypeName() { return docTypeName; } - public DerivedConfiguration derived() { return getDocumentDbs().get(0).getDerivedConfiguration(); } + public DerivedConfiguration derived() { return derivedConfig; } + + @Override + public void getConfig(DocumentdbInfoConfig.Builder builder) { + DocumentdbInfoConfig.Documentdb.Builder docDb = new DocumentdbInfoConfig.Documentdb.Builder(); + docDb.name(derivedConfig.getSchema().getName()); + builder.documentdb(docDb); + } @Override public void deriveFromSchemas(DeployState deployState) { @@ -47,12 +82,64 @@ public class StreamingSearchCluster extends SearchCluster if ( ! schema.getName().equals(docTypeName)) throw new IllegalArgumentException("Document type name '" + docTypeName + "' must be the same as the schema name '" + schema.getName() + "'"); - add(new DocumentDatabase(this, docTypeName, new DerivedConfiguration(schema, deployState, true))); + this.derivedConfig = new DerivedConfiguration(schema, deployState, true); + this.derivedDb = new DocumentDatabase(this, docTypeName, this.derivedConfig); + } + + @Override + public List<DocumentDatabase> getDocumentDbs() { + if (derivedDb == null) { + throw new IllegalArgumentException("missing derivedConfig"); + } + return List.of(derivedDb); } - protected void fillDocumentDBConfig(DocumentDatabase sdoc, ProtonConfig.Documentdb.Builder ddbB) { - super.fillDocumentDBConfig(sdoc, ddbB); - ddbB.configid(attributesConfig.getConfigId()); // Temporary until fully cleaned up + @Override + public void getConfig(IndexInfoConfig.Builder builder) { + derivedConfig.getIndexInfo().getConfig(builder); + } + + @Override + public void getConfig(SchemaInfoConfig.Builder builder) { + derivedConfig.getSchemaInfo().getConfig(builder); + } + + @Override + public void getConfig(IlscriptsConfig.Builder builder) { + derivedConfig.getIndexingScript().getConfig(builder); + } + + public void getConfig(AttributesConfig.Builder builder) { + derivedConfig.getConfig(builder); + } + + @Override + public void getConfig(RankProfilesConfig.Builder builder) { + derivedConfig.getRankProfileList().getConfig(builder); + } + + @Override + public void getConfig(RankingConstantsConfig.Builder builder) { derivedConfig.getRankProfileList().getConfig(builder); } + + @Override + public void getConfig(RankingExpressionsConfig.Builder builder) { derivedConfig.getRankProfileList().getConfig(builder); } + + @Override + public void getConfig(OnnxModelsConfig.Builder builder) { derivedConfig.getRankProfileList().getConfig(builder); } + + @Override + public void getConfig(VsmsummaryConfig.Builder builder) { + derivedConfig.getVsmSummary().getConfig(builder); + } + + @Override + public void getConfig(VsmfieldsConfig.Builder builder) { + derivedConfig.getVsmFields().getConfig(builder); + } + + @Override + public void getConfig(SummaryConfig.Builder builder) { + derivedConfig.getSummaries().getConfig(builder); } private class AttributesProducer extends AnyConfigProducer implements AttributesConfig.Producer { @@ -63,7 +150,7 @@ public class StreamingSearchCluster extends SearchCluster @Override public void getConfig(AttributesConfig.Builder builder) { - derived().getConfig(builder, AttributeFields.FieldSet.FAST_ACCESS); + derivedConfig.getConfig(builder, AttributeFields.FieldSet.FAST_ACCESS); } } |