diff options
author | Geir Storli <geirst@verizonmedia.com> | 2021-04-19 13:50:30 +0000 |
---|---|---|
committer | Geir Storli <geirst@verizonmedia.com> | 2021-04-19 13:50:30 +0000 |
commit | b22f9ad0bbfc8883c94d93fcd042ba481a26beb2 (patch) | |
tree | bbb0a1dc6edd9f6ee5bb5b517117df9cb9dff186 /config-model/src/main/java/com/yahoo/searchdefinition/processing | |
parent | 27b92ce584f3d30ae64406f843e2224d56422f2e (diff) |
A tensor field that specifies hnsw index parameters must also specify 'index' in 'indexing'.
Diffstat (limited to 'config-model/src/main/java/com/yahoo/searchdefinition/processing')
-rw-r--r-- | config-model/src/main/java/com/yahoo/searchdefinition/processing/TensorFieldProcessor.java | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/TensorFieldProcessor.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/TensorFieldProcessor.java index dcf238c71c2..397e1c3deab 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/TensorFieldProcessor.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/TensorFieldProcessor.java @@ -29,6 +29,7 @@ public class TensorFieldProcessor extends Processor { if (validate) { validateIndexingScripsForTensorField(field); validateAttributeSettingForTensorField(field); + validateHnswIndexParametersRequiresIndexing(field); } processIndexSettingsForTensorField(field, validate); } @@ -84,6 +85,13 @@ public class TensorFieldProcessor extends Processor { } } + private void validateHnswIndexParametersRequiresIndexing(SDField field) { + var index = field.getIndex(field.getName()); + if (index != null && index.getHnswIndexParams().isPresent() && !field.doesIndexing()) { + fail(search, field, "A tensor that specifies hnsw index parameters must also specify 'index' in 'indexing'"); + } + } + private void processIndexSettingsForTensorField(SDField field, boolean validate) { if (!field.doesIndexing()) { return; |