diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2022-01-31 00:45:27 +0100 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2022-01-31 00:45:27 +0100 |
commit | d8e06c26f45d3d92d131263286b7b538aa172908 (patch) | |
tree | 1eed2cea653c7605fccfb9e95a1c3c2831beeb31 /config-model | |
parent | 431c2763a3b7f624769c3ac1ed3ce88ef229a167 (diff) |
Ensure deterministic ordering of array config
Diffstat (limited to 'config-model')
-rw-r--r-- | config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/ConsumersConfigGenerator.java | 4 | ||||
-rw-r--r-- | config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/Metric.java | 4 |
2 files changed, 5 insertions, 3 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/ConsumersConfigGenerator.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/ConsumersConfigGenerator.java index e894fba079d..ae2139be43c 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/ConsumersConfigGenerator.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/metricsproxy/ConsumersConfigGenerator.java @@ -8,9 +8,11 @@ import com.yahoo.vespa.model.admin.monitoring.Metric; import com.yahoo.vespa.model.admin.monitoring.MetricSet; import com.yahoo.vespa.model.admin.monitoring.MetricsConsumer; +import java.util.Comparator; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; +import java.util.TreeMap; import java.util.stream.Collectors; /** @@ -71,7 +73,7 @@ class ConsumersConfigGenerator { static Consumer.Builder toConsumerBuilder(MetricsConsumer consumer) { Consumer.Builder builder = new Consumer.Builder().name(consumer.id()); - consumer.metrics().values().forEach(metric -> builder.metric(toConsumerMetricBuilder(metric))); + consumer.metrics().values().stream().sorted(Comparator.comparing(a -> a.name)).forEach(metric -> builder.metric(toConsumerMetricBuilder(metric))); return builder; } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/Metric.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/Metric.java index e5e5a30e34f..c2b0a358a54 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/Metric.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/monitoring/Metric.java @@ -25,11 +25,11 @@ public class Metric { this.name = name; this.outputName = outputName; this.description = description; - this.dimensions = Collections.unmodifiableMap(dimensions); + this.dimensions = Map.copyOf(dimensions); } public Metric(String name, String outputName, String description) { - this(name, outputName, description, new HashMap<>()); + this(name, outputName, description, new LinkedHashMap<>()); } /** |