diff options
author | Jon Bratseth <bratseth@gmail.com> | 2022-02-16 16:43:20 +0100 |
---|---|---|
committer | Jon Bratseth <bratseth@gmail.com> | 2022-02-16 16:43:20 +0100 |
commit | e25d913b884339afc4f8e3073e4e4b795e55d930 (patch) | |
tree | 408e9fded165a07fae202fd691f6f2864680ac63 /config-model/src/main/java/com/yahoo/searchdefinition/derived | |
parent | 6f99bd502132cd378124a40060ac1d74d54f5e92 (diff) |
Resolve slice dimension
Diffstat (limited to 'config-model/src/main/java/com/yahoo/searchdefinition/derived')
-rw-r--r-- | config-model/src/main/java/com/yahoo/searchdefinition/derived/RawRankProfile.java | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/RawRankProfile.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/RawRankProfile.java index 75703c33f07..9370075bcf3 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/RawRankProfile.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/RawRankProfile.java @@ -63,8 +63,8 @@ public class RawRankProfile implements RankProfilesConfig.Producer { QueryProfileRegistry queryProfiles, ImportedMlModels importedModels, AttributeFields attributeFields, ModelContext.Properties deployProperties) { this.name = rankProfile.name(); - compressedProperties = compress(new Deriver(rankProfile.compile(queryProfiles, importedModels), - attributeFields, deployProperties).derive(largeExpressions)); + compressedProperties = compress(new Deriver(rankProfile.compile(queryProfiles, importedModels), attributeFields, deployProperties, queryProfiles) + .derive(largeExpressions)); } private Compressor.Compression compress(List<Pair<String, String>> properties) { @@ -156,7 +156,10 @@ public class RawRankProfile implements RankProfilesConfig.Producer { /** * Creates a raw rank profile from the given rank profile */ - Deriver(RankProfile compiled, AttributeFields attributeFields, ModelContext.Properties deployProperties) { + Deriver(RankProfile compiled, + AttributeFields attributeFields, + ModelContext.Properties deployProperties, + QueryProfileRegistry queryProfiles) { rankprofileName = compiled.name(); attributeTypes = compiled.getAttributeTypes(); queryFeatureTypes = compiled.getQueryFeatureTypes(); @@ -179,7 +182,9 @@ public class RawRankProfile implements RankProfilesConfig.Producer { Map<String, RankProfile.RankingExpressionFunction> functions = compiled.getFunctions(); List<ExpressionFunction> functionExpressions = functions.values().stream().map(f -> f.function()).collect(Collectors.toList()); Map<String, String> functionProperties = new LinkedHashMap<>(); - SerializationContext functionSerializationContext = new SerializationContext(functionExpressions); + SerializationContext functionSerializationContext = new SerializationContext(functionExpressions, + Map.of(), + compiled.typeContext(queryProfiles)); if (firstPhaseRanking != null) { functionProperties.putAll(firstPhaseRanking.getRankProperties(functionSerializationContext)); @@ -201,8 +206,8 @@ public class RawRankProfile implements RankProfilesConfig.Producer { } private void derivePropertiesAndFeaturesFromFunctions(Map<String, RankProfile.RankingExpressionFunction> functions, - Map<String, String> functionProperties, - SerializationContext functionContext) { + Map<String, String> functionProperties, + SerializationContext functionContext) { if (functions.isEmpty()) return; replaceFunctionFeatures(summaryFeatures, functionContext); |