diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2022-12-01 22:45:55 +0100 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2022-12-01 22:45:55 +0100 |
commit | 6a9681d7f3e42f29bd1d9de9fe9c271489b0c886 (patch) | |
tree | 227e5c3f2e1fcae248e0daf85735358b06971e33 /config-model/src/main/java/com/yahoo/schema/derived | |
parent | 1eb22cc4a24973f52b344c3033cff394c724cbe4 (diff) |
Use well defined order where we output text and generate config. Makes config stable and simple tests predictable.
Diffstat (limited to 'config-model/src/main/java/com/yahoo/schema/derived')
-rw-r--r-- | config-model/src/main/java/com/yahoo/schema/derived/RawRankProfile.java | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/config-model/src/main/java/com/yahoo/schema/derived/RawRankProfile.java b/config-model/src/main/java/com/yahoo/schema/derived/RawRankProfile.java index 59f4035f34f..14ee60bb9a6 100644 --- a/config-model/src/main/java/com/yahoo/schema/derived/RawRankProfile.java +++ b/config-model/src/main/java/com/yahoo/schema/derived/RawRankProfile.java @@ -20,7 +20,6 @@ import com.yahoo.searchlib.rankingexpression.Reference; import com.yahoo.searchlib.rankingexpression.parser.ParseException; import com.yahoo.searchlib.rankingexpression.rule.ReferenceNode; import com.yahoo.searchlib.rankingexpression.rule.SerializationContext; -import com.yahoo.tensor.TensorType; import com.yahoo.vespa.config.search.RankProfilesConfig; import java.nio.ByteBuffer; @@ -196,7 +195,7 @@ public class RawRankProfile implements RankProfilesConfig.Producer { rankProperties = new ArrayList<>(compiled.getRankProperties()); Map<String, RankProfile.RankingExpressionFunction> functions = compiled.getFunctions(); - List<ExpressionFunction> functionExpressions = functions.values().stream().map(f -> f.function()).collect(Collectors.toList()); + List<ExpressionFunction> functionExpressions = functions.values().stream().map(RankProfile.RankingExpressionFunction::function).collect(Collectors.toList()); Map<String, String> functionProperties = new LinkedHashMap<>(); SerializationContext functionSerializationContext = new SerializationContext(functionExpressions, Map.of(), @@ -248,8 +247,8 @@ public class RawRankProfile implements RankProfilesConfig.Producer { String expressionString = e.getValue().function().getBody().getRoot().toString(context).toString(); context.addFunctionSerialization(propertyName, expressionString); - for (Map.Entry<String, TensorType> argumentType : e.getValue().function().argumentTypes().entrySet()) - context.addArgumentTypeSerialization(e.getKey(), argumentType.getKey(), argumentType.getValue()); + e.getValue().function().argumentTypes().entrySet().stream().sorted(Map.Entry.comparingByKey()) + .forEach(argumentType -> context.addArgumentTypeSerialization(e.getKey(), argumentType.getKey(), argumentType.getValue())); if (e.getValue().function().returnType().isPresent()) context.addFunctionTypeSerialization(e.getKey(), e.getValue().function().returnType().get()); // else if (e.getValue().function().arguments().isEmpty()) TODO: Enable this check when we resolve all types |