summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--searchlib/src/tests/attribute/tensorattribute/tensorattribute_test.cpp9
-rw-r--r--searchlib/src/vespa/searchlib/tensor/nearest_neighbor_index.h16
2 files changed, 11 insertions, 14 deletions
diff --git a/searchlib/src/tests/attribute/tensorattribute/tensorattribute_test.cpp b/searchlib/src/tests/attribute/tensorattribute/tensorattribute_test.cpp
index 74e67fb7fcd..7a4c6c9e56a 100644
--- a/searchlib/src/tests/attribute/tensorattribute/tensorattribute_test.cpp
+++ b/searchlib/src/tests/attribute/tensorattribute/tensorattribute_test.cpp
@@ -158,6 +158,15 @@ public:
auto vector = _vectors.get_vector(docid).typify<double>();
_adds.emplace_back(docid, DoubleVector(vector.begin(), vector.end()));
}
+ std::unique_ptr<search::tensor::PrepareResult> prepare_add_document(uint32_t,
+ vespalib::tensor::TypedCells,
+ vespalib::GenerationHandler::Guard) const override {
+ return std::unique_ptr<search::tensor::PrepareResult>();
+ }
+ void complete_add_document(uint32_t docid,
+ std::unique_ptr<search::tensor::PrepareResult>) override {
+ add_document(docid);
+ }
void remove_document(uint32_t docid) override {
auto vector = _vectors.get_vector(docid).typify<double>();
_removes.emplace_back(docid, DoubleVector(vector.begin(), vector.end()));
diff --git a/searchlib/src/vespa/searchlib/tensor/nearest_neighbor_index.h b/searchlib/src/vespa/searchlib/tensor/nearest_neighbor_index.h
index 725ac453ed8..b46c19ac88a 100644
--- a/searchlib/src/vespa/searchlib/tensor/nearest_neighbor_index.h
+++ b/searchlib/src/vespa/searchlib/tensor/nearest_neighbor_index.h
@@ -48,26 +48,14 @@ public:
*/
virtual std::unique_ptr<PrepareResult> prepare_add_document(uint32_t docid,
vespalib::tensor::TypedCells vector,
- vespalib::GenerationHandler::Guard read_guard) const {
- // TODO: Make it pure virtual after more wiring is complete.
- (void) docid;
- (void) vector;
- (void) read_guard;
- return std::unique_ptr<PrepareResult>();
- }
-
+ vespalib::GenerationHandler::Guard read_guard) const = 0;
/**
* Performs the complete step in a two-phase operation to add a document to the index.
*
* This function is only called by the attribute writer thread.
* It uses the result from the prepare step to do the modifying changes.
*/
- virtual void complete_add_document(uint32_t docid,
- std::unique_ptr<PrepareResult> prepare_result) {
- // TODO: Make it pure virtual after more wiring is complete.
- (void) docid;
- (void) prepare_result;
- }
+ virtual void complete_add_document(uint32_t docid, std::unique_ptr<PrepareResult> prepare_result) = 0;
virtual void remove_document(uint32_t docid) = 0;
virtual void transfer_hold_lists(generation_t current_gen) = 0;