diff options
author | Arne Juul <arnej@yahooinc.com> | 2023-03-06 14:45:56 +0000 |
---|---|---|
committer | Arne Juul <arnej@yahooinc.com> | 2023-03-06 14:45:56 +0000 |
commit | 879d2d9bcc84a3e246c9d48b7cf701b49633c7a0 (patch) | |
tree | 27993a9538dee65dcee23e4bad1a5c343fe0bb08 /config-model/src/main/java/com | |
parent | 85f059dc265a06d29944d94cf6f3f8368a3d5fd1 (diff) |
add RankProfilesEvaluatorComponent instances for streaming search clusters also
Diffstat (limited to 'config-model/src/main/java/com')
4 files changed, 22 insertions, 6 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/search/ContainerSearch.java b/config-model/src/main/java/com/yahoo/vespa/model/container/search/ContainerSearch.java index d97840d4cbf..b2a38bd6b08 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/search/ContainerSearch.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/search/ContainerSearch.java @@ -77,12 +77,12 @@ public class ContainerSearch extends ContainerSubsystem<SearchChains> if (searchCluster instanceof IndexedSearchCluster indexed) { var dispatcher = new DispatcherComponent(indexed); owningCluster.addComponent(dispatcher); - if (globalPhase) { - for (var documentDb : indexed.getDocumentDbs()) { - var factory = new RankProfilesEvaluatorComponent(documentDb); - if (! owningCluster.getComponentsMap().containsKey(factory.getComponentId())) { - owningCluster.addComponent(factory); - } + } + if (globalPhase) { + for (var documentDb : searchCluster.getDocumentDbs()) { + var factory = new RankProfilesEvaluatorComponent(documentDb); + if (! owningCluster.getComponentsMap().containsKey(factory.getComponentId())) { + owningCluster.addComponent(factory); } } } 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 708a3f220ac..4ed8c5ab2e8 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 @@ -203,9 +203,11 @@ public class IndexedSearchCluster extends SearchCluster } } + @Override public List<DocumentDatabase> getDocumentDbs() { return documentDbs; } + public boolean hasDocumentDB(String name) { for (DocumentDatabase db : documentDbs) { if (db.getName().equals(name)) { 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 61455fcbf34..818c43d0f93 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 @@ -55,6 +55,9 @@ public abstract class SearchCluster extends TreeConfigProducer<AnyConfigProducer */ public abstract void deriveFromSchemas(DeployState deployState); + /** Returns the document databases contained in this cluster */ + public abstract List<DocumentDatabase> getDocumentDbs(); + /** Returns a list of the document type names used in this search cluster */ public List<String> getDocumentNames() { return schemas.values() 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 6293a6d6cf2..3cedae2f896 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 @@ -17,6 +17,8 @@ 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. * @@ -80,6 +82,15 @@ public class StreamingSearchCluster extends SearchCluster implements } @Override + public List<DocumentDatabase> getDocumentDbs() { + if (derived() == null) { + throw new IllegalArgumentException("missing derivedConfig"); + } + var db = new DocumentDatabase(this, docTypeName, derived()); + return List.of(db); + } + + @Override public void defaultDocumentsConfig() { } @Override |