diff options
4 files changed, 17 insertions, 3 deletions
diff --git a/config-model-api/abi-spec.json b/config-model-api/abi-spec.json index c3e20e534ff..8c5bf410015 100644 --- a/config-model-api/abi-spec.json +++ b/config-model-api/abi-spec.json @@ -1501,7 +1501,9 @@ "record" ], "methods" : [ + "public void <init>(java.lang.String, long, long, com.yahoo.config.model.api.OnnxModelOptions)", "public void <init>(java.lang.String, long, long, java.util.Optional)", + "public com.yahoo.config.model.api.OnnxModelOptions options()", "public final java.lang.String toString()", "public final int hashCode()", "public final boolean equals(java.lang.Object)", diff --git a/config-model-api/src/main/java/com/yahoo/config/model/api/OnnxModelCost.java b/config-model-api/src/main/java/com/yahoo/config/model/api/OnnxModelCost.java index d70b751eba0..650ce1ac14c 100644 --- a/config-model-api/src/main/java/com/yahoo/config/model/api/OnnxModelCost.java +++ b/config-model-api/src/main/java/com/yahoo/config/model/api/OnnxModelCost.java @@ -18,8 +18,10 @@ public interface OnnxModelCost { interface Calculator { long aggregatedModelCostInBytes(); + // TODO: Unused, remove when 8.263.7 is oldest model in use void registerModel(ApplicationFile path); void registerModel(ApplicationFile path, OnnxModelOptions onnxModelOptions); + // TODO: Unused, remove when 8.263.7 is oldest model in use void registerModel(URI uri); void registerModel(URI uri, OnnxModelOptions onnxModelOptions); Map<String, ModelInfo> models(); @@ -28,7 +30,17 @@ public interface OnnxModelCost { void store(); } - record ModelInfo(String modelId, long estimatedCost, long hash, Optional<OnnxModelOptions> onnxModelOptions) {} + record ModelInfo(String modelId, long estimatedCost, long hash, Optional<OnnxModelOptions> onnxModelOptions) { + + public ModelInfo(String modelId, long estimatedCost, long hash, OnnxModelOptions onnxModelOptions) { + this(modelId, estimatedCost, hash, Optional.of(onnxModelOptions)); + } + + public OnnxModelOptions options() { + return onnxModelOptions.orElseThrow(() -> new IllegalStateException("No onnxModelOptions exist")); + } + + } static OnnxModelCost disabled() { return new DisabledOnnxModelCost(); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/Validation.java b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/Validation.java index 56277345515..d296015580f 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/application/validation/Validation.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/application/validation/Validation.java @@ -100,6 +100,7 @@ public class Validation { Optional<Model> currentActiveModel = deployState.getPreviousModel(); if (currentActiveModel.isPresent() && (currentActiveModel.get() instanceof VespaModel)) { result = validateChanges((VespaModel) currentActiveModel.get(), model, deployState); + // TODO: Why is this done here? It won't be done on more than one config server? deferConfigChangesForClustersToBeRestarted(result, model); } } diff --git a/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/RestartOnDeployForOnnxModelChangesValidatorTest.java b/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/RestartOnDeployForOnnxModelChangesValidatorTest.java index adcf58785fa..d0f5f01d61e 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/RestartOnDeployForOnnxModelChangesValidatorTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/RestartOnDeployForOnnxModelChangesValidatorTest.java @@ -15,7 +15,6 @@ import java.net.URI; import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.Optional; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertTrue; @@ -99,7 +98,7 @@ public class RestartOnDeployForOnnxModelChangesValidatorTest { @Override public void registerModel(URI uri, OnnxModelOptions onnxModelOptions) { - models.put(uri.toString(), new OnnxModelCost.ModelInfo(uri.toString(), estimatedCost, hash, Optional.ofNullable(onnxModelOptions))); + models.put(uri.toString(), new OnnxModelCost.ModelInfo(uri.toString(), estimatedCost, hash, onnxModelOptions)); } @Override |