aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHåkon Hallingstad <hakon.hallingstad@gmail.com>2022-05-09 19:20:17 +0200
committerGitHub <noreply@github.com>2022-05-09 19:20:17 +0200
commita5fe235c244938f53057e23116b50af9645f294d (patch)
tree83b02b2ade02a4409b58e20dddeeb71fe2b6075d
parent7ed5e488900a85e681432b1b1a17128fcc2085c5 (diff)
parent70a4fd1537f5ea2e50094ef2c487f8c667791870 (diff)
Merge pull request #22518 from vespa-engine/revert-22517-balder/deterministic-rank-expressions-config
Revert "Make config generation deterministic by sorting the expressions by th…"
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/DistributableResource.java6
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/LargeRankExpressions.java9
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java2
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/application/validation/RankSetupValidator.java3
4 files changed, 7 insertions, 13 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/DistributableResource.java b/config-model/src/main/java/com/yahoo/searchdefinition/DistributableResource.java
index 11c55521100..e134b8f53ac 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/DistributableResource.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/DistributableResource.java
@@ -8,7 +8,7 @@ import com.yahoo.path.Path;
import java.nio.ByteBuffer;
import java.util.Objects;
-public class DistributableResource implements Comparable <DistributableResource> {
+public class DistributableResource {
public enum PathType { FILE, URI, BLOB }
@@ -87,8 +87,4 @@ public class DistributableResource implements Comparable <DistributableResource>
return "resource '" + name + " of type '" + pathType + "' with ref '" + fileReference + "'";
}
- @Override
- public int compareTo(DistributableResource o) {
- return name.compareTo(o.getName());
- }
}
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/LargeRankExpressions.java b/config-model/src/main/java/com/yahoo/searchdefinition/LargeRankExpressions.java
index 41ed2cbe999..a1299c12307 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/LargeRankExpressions.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/LargeRankExpressions.java
@@ -3,10 +3,9 @@ package com.yahoo.searchdefinition;
import com.yahoo.config.application.api.FileRegistry;
-import java.util.Collection;
+import java.util.Collections;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
-import java.util.stream.Collectors;
public class LargeRankExpressions {
private final Map<String, RankExpressionBody> expressions = new ConcurrentHashMap<>();
@@ -37,9 +36,9 @@ public class LargeRankExpressions {
}
public int limit() { return limit; }
- /** Returns a read-only list of ranking constants ordered by name */
- public Collection<RankExpressionBody> expressions() {
- return expressions.values().stream().sorted().collect(Collectors.toUnmodifiableList());
+ /** Returns a read-only map of the ranking constants in this indexed by name */
+ public Map<String, RankExpressionBody> asMap() {
+ return Collections.unmodifiableMap(expressions);
}
}
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 4c9e65f16c8..cd94b4a7f6e 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
@@ -153,7 +153,7 @@ public class RankProfileList extends Derived implements RankProfilesConfig.Produ
}
public void getConfig(RankingExpressionsConfig.Builder builder) {
- largeRankExpressions.expressions().forEach((expr) -> builder.expression.add(new RankingExpressionsConfig.Expression.Builder().name(expr.getName()).fileref(expr.getFileReference())));
+ largeRankExpressions.asMap().values().forEach((expr) -> builder.expression.add(new RankingExpressionsConfig.Expression.Builder().name(expr.getName()).fileref(expr.getFileReference())));
}
public void getConfig(RankingConstantsConfig.Builder builder) {
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/RankSetupValidator.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/RankSetupValidator.java
index b9b7f122d63..ed943317a1f 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/RankSetupValidator.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/RankSetupValidator.java
@@ -153,9 +153,8 @@ public class RankSetupValidator extends Validator {
// Assist verify-ranksetup in finding the actual ONNX model files
writeExtraVerifyRankSetupConfig(config, db.getDerivedConfiguration().getSchema().onnxModels().asMap().values());
- writeExtraVerifyRankSetupConfig(config, db.getDerivedConfiguration().getSchema().rankExpressionFiles().expressions());
+ writeExtraVerifyRankSetupConfig(config, db.getDerivedConfiguration().getSchema().rankExpressionFiles().asMap().values());
- config.sort(String::compareTo);
String configContent = config.isEmpty() ? "" : StringUtilities.implodeMultiline(config);
IOUtils.writeFile(dir + "verify-ranksetup.cfg", configContent, false);
}