summaryrefslogtreecommitdiffstats
path: root/searchlib
diff options
context:
space:
mode:
authorGeir Storli <geirst@verizonmedia.com>2020-09-24 14:50:12 +0000
committerGeir Storli <geirst@verizonmedia.com>2020-09-24 14:50:12 +0000
commit0eacb27ebbf5e03123c0605ab54a289a98037516 (patch)
tree53c0759b5528b37a8f34d2a61e15c2e7c7024a40 /searchlib
parentdf62e7f9e691fe4c1b2af83a9439afff74aa5e1d (diff)
Handle innerproduct distance metric when reading attribute header.
Diffstat (limited to 'searchlib')
-rw-r--r--searchlib/src/tests/attribute/attribute_header/attribute_header_test.cpp2
-rw-r--r--searchlib/src/vespa/searchlib/attribute/attribute_header.cpp2
2 files changed, 4 insertions, 0 deletions
diff --git a/searchlib/src/tests/attribute/attribute_header/attribute_header_test.cpp b/searchlib/src/tests/attribute/attribute_header/attribute_header_test.cpp
index 1e89fbe7501..aca9b652b94 100644
--- a/searchlib/src/tests/attribute/attribute_header/attribute_header_test.cpp
+++ b/searchlib/src/tests/attribute/attribute_header/attribute_header_test.cpp
@@ -72,6 +72,8 @@ TEST(AttributeHeaderTest, can_be_added_to_and_extracted_from_generic_header)
verify_roundtrip_serialization(HnswIPO({16, 100, DistanceMetric::Euclidean}));
verify_roundtrip_serialization(HnswIPO({16, 100, DistanceMetric::Angular}));
verify_roundtrip_serialization(HnswIPO({16, 100, DistanceMetric::GeoDegrees}));
+ verify_roundtrip_serialization(HnswIPO({16, 100, DistanceMetric::InnerProduct}));
+ verify_roundtrip_serialization(HnswIPO({16, 100, DistanceMetric::Hamming}));
verify_roundtrip_serialization(HnswIPO());
}
diff --git a/searchlib/src/vespa/searchlib/attribute/attribute_header.cpp b/searchlib/src/vespa/searchlib/attribute/attribute_header.cpp
index 430f2eaa560..cfbca71bd5e 100644
--- a/searchlib/src/vespa/searchlib/attribute/attribute_header.cpp
+++ b/searchlib/src/vespa/searchlib/attribute/attribute_header.cpp
@@ -114,6 +114,8 @@ to_distance_metric(const vespalib::string& metric)
return DistanceMetric::Angular;
} else if (metric == geodegrees) {
return DistanceMetric::GeoDegrees;
+ } else if (metric == innerproduct) {
+ return DistanceMetric::InnerProduct;
} else if (metric == hamming) {
return DistanceMetric::Hamming;
} else {