summaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@gmail.com>2022-05-11 16:05:57 +0200
committerJon Bratseth <bratseth@gmail.com>2022-05-11 16:05:57 +0200
commit7ea7f1fd2917698cc30c9cea3a81ebf2f99f3d70 (patch)
tree0879b5f098aff4474bc3d6ccc5b19187893bbe3b /config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java
parent1f587cfa6583c16fa40d960aaa33db77478aca7a (diff)
Pass DeployState
Diffstat (limited to 'config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java')
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java37
1 files changed, 20 insertions, 17 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java
index c36bd96d309..a55c97f4ebb 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java
@@ -3,6 +3,7 @@ package com.yahoo.searchdefinition.derived;
import ai.vespa.rankingexpression.importer.configmodelview.ImportedMlModels;
import com.yahoo.config.model.api.ModelContext;
+import com.yahoo.config.model.deploy.DeployState;
import com.yahoo.search.query.profile.QueryProfileRegistry;
import com.yahoo.searchdefinition.OnnxModel;
import com.yahoo.searchdefinition.OnnxModels;
@@ -60,16 +61,12 @@ public class RankProfileList extends Derived implements RankProfilesConfig.Produ
LargeRankExpressions largeRankExpressions,
OnnxModels onnxModels,
AttributeFields attributeFields,
- RankProfileRegistry rankProfileRegistry,
- QueryProfileRegistry queryProfiles,
- ImportedMlModels importedModels,
- ModelContext.Properties deployProperties,
- ExecutorService executor) {
+ DeployState deployState) {
setName(schema == null ? "default" : schema.getName());
this.rankingConstants = rankingConstants;
this.largeRankExpressions = largeRankExpressions;
this.onnxModels = onnxModels; // as ONNX models come from parsing rank expressions
- deriveRankProfiles(rankProfileRegistry, queryProfiles, importedModels, schema, attributeFields, deployProperties, executor);
+ deriveRankProfiles(schema, attributeFields, deployState);
}
private boolean areDependenciesReady(RankProfile rank, RankProfileRegistry registry) {
@@ -78,28 +75,34 @@ public class RankProfileList extends Derived implements RankProfilesConfig.Produ
(rank.schema() != null && rank.inheritedNames().stream().allMatch(name -> registry.resolve(rank.schema().getDocument(), name) != null));
}
- private void deriveRankProfiles(RankProfileRegistry rankProfileRegistry,
- QueryProfileRegistry queryProfiles,
- ImportedMlModels importedModels,
- Schema schema,
+ private void deriveRankProfiles(Schema schema,
AttributeFields attributeFields,
- ModelContext.Properties deployProperties,
- ExecutorService executor) {
+ DeployState deployState) {
if (schema != null) { // profiles belonging to a search have a default profile
- RawRankProfile rawRank = new RawRankProfile(rankProfileRegistry.get(schema, "default"),
- largeRankExpressions, queryProfiles, importedModels, attributeFields, deployProperties);
+ RawRankProfile rawRank = new RawRankProfile(deployState.rankProfileRegistry().get(schema, "default"),
+ largeRankExpressions,
+ deployState.getQueryProfiles().getRegistry(),
+ deployState.getImportedModels(),
+ attributeFields,
+ deployState.getProperties());
rankProfiles.put(rawRank.getName(), rawRank);
}
Map<String, RankProfile> remaining = new LinkedHashMap<>();
- rankProfileRegistry.rankProfilesOf(schema).forEach(rank -> remaining.put(rank.name(), rank));
+ deployState.rankProfileRegistry().rankProfilesOf(schema).forEach(rank -> remaining.put(rank.name(), rank));
remaining.remove("default");
while (!remaining.isEmpty()) {
List<RankProfile> ready = new ArrayList<>();
remaining.forEach((name, rank) -> {
- if (areDependenciesReady(rank, rankProfileRegistry)) ready.add(rank);
+ if (areDependenciesReady(rank, deployState.rankProfileRegistry())) ready.add(rank);
});
- processRankProfiles(ready, queryProfiles, importedModels, schema, attributeFields, deployProperties, executor);
+ processRankProfiles(ready,
+ deployState.getQueryProfiles().getRegistry(),
+ deployState.getImportedModels(),
+ schema,
+ attributeFields,
+ deployState.getProperties(),
+ deployState.getExecutor());
ready.forEach(rank -> remaining.remove(rank.name()));
}
}