diff options
Diffstat (limited to 'searchlib/src/vespa/searchlib')
6 files changed, 7 insertions, 11 deletions
diff --git a/searchlib/src/vespa/searchlib/tensor/dense_tensor_store.cpp b/searchlib/src/vespa/searchlib/tensor/dense_tensor_store.cpp index ba7e8526146..60a3546578a 100644 --- a/searchlib/src/vespa/searchlib/tensor/dense_tensor_store.cpp +++ b/searchlib/src/vespa/searchlib/tensor/dense_tensor_store.cpp @@ -121,7 +121,7 @@ DenseTensorStore::holdTensor(EntryRef ref) } TensorStore::EntryRef -DenseTensorStore::move(EntryRef ref) +DenseTensorStore::move_on_compact(EntryRef ref) { if (!ref.valid()) { return RefType(); @@ -129,7 +129,6 @@ DenseTensorStore::move(EntryRef ref) auto oldraw = getRawBuffer(ref); auto newraw = allocRawBuffer(); memcpy(newraw.data, static_cast<const char *>(oldraw), getBufSize()); - _concreteStore.holdElem(ref, _tensorSizeCalc.alignedSize()); return newraw.ref; } diff --git a/searchlib/src/vespa/searchlib/tensor/dense_tensor_store.h b/searchlib/src/vespa/searchlib/tensor/dense_tensor_store.h index 1b25bdad464..298e58ee410 100644 --- a/searchlib/src/vespa/searchlib/tensor/dense_tensor_store.h +++ b/searchlib/src/vespa/searchlib/tensor/dense_tensor_store.h @@ -63,7 +63,7 @@ public: } vespalib::datastore::Handle<char> allocRawBuffer(); void holdTensor(EntryRef ref) override; - EntryRef move(EntryRef ref) override; + EntryRef move_on_compact(EntryRef ref) override; vespalib::MemoryUsage update_stat(const vespalib::datastore::CompactionStrategy& compaction_strategy) override; std::unique_ptr<vespalib::datastore::ICompactionContext> start_compact(const vespalib::datastore::CompactionStrategy& compaction_strategy) override; EntryRef store_tensor(const vespalib::eval::Value &tensor) override; diff --git a/searchlib/src/vespa/searchlib/tensor/direct_tensor_store.cpp b/searchlib/src/vespa/searchlib/tensor/direct_tensor_store.cpp index 1184cca37e7..013e7dedeba 100644 --- a/searchlib/src/vespa/searchlib/tensor/direct_tensor_store.cpp +++ b/searchlib/src/vespa/searchlib/tensor/direct_tensor_store.cpp @@ -71,16 +71,14 @@ DirectTensorStore::holdTensor(EntryRef ref) } EntryRef -DirectTensorStore::move(EntryRef ref) +DirectTensorStore::move_on_compact(EntryRef ref) { if (!ref.valid()) { return EntryRef(); } const auto& old_tensor = _tensor_store.getEntry(ref); assert(old_tensor); - auto new_ref = add_entry(old_tensor); - _tensor_store.holdElem(ref, 1, old_tensor->get_memory_usage().allocatedBytes()); - return new_ref; + return add_entry(old_tensor); } vespalib::MemoryUsage diff --git a/searchlib/src/vespa/searchlib/tensor/direct_tensor_store.h b/searchlib/src/vespa/searchlib/tensor/direct_tensor_store.h index ff9540a27b3..c55dda5646a 100644 --- a/searchlib/src/vespa/searchlib/tensor/direct_tensor_store.h +++ b/searchlib/src/vespa/searchlib/tensor/direct_tensor_store.h @@ -49,7 +49,7 @@ public: EntryRef store_tensor(std::unique_ptr<vespalib::eval::Value> tensor); void holdTensor(EntryRef ref) override; - EntryRef move(EntryRef ref) override; + EntryRef move_on_compact(EntryRef ref) override; vespalib::MemoryUsage update_stat(const vespalib::datastore::CompactionStrategy& compaction_strategy) override; std::unique_ptr<vespalib::datastore::ICompactionContext> start_compact(const vespalib::datastore::CompactionStrategy& compaction_strategy) override; EntryRef store_tensor(const vespalib::eval::Value& tensor) override; diff --git a/searchlib/src/vespa/searchlib/tensor/tensor_buffer_store.cpp b/searchlib/src/vespa/searchlib/tensor/tensor_buffer_store.cpp index 800311adfd6..6b96a91ec1c 100644 --- a/searchlib/src/vespa/searchlib/tensor/tensor_buffer_store.cpp +++ b/searchlib/src/vespa/searchlib/tensor/tensor_buffer_store.cpp @@ -48,7 +48,7 @@ TensorBufferStore::holdTensor(EntryRef ref) } EntryRef -TensorBufferStore::move(EntryRef ref) +TensorBufferStore::move_on_compact(EntryRef ref) { if (!ref.valid()) { return EntryRef(); @@ -56,7 +56,6 @@ TensorBufferStore::move(EntryRef ref) auto buf = _array_store.get(ref); auto new_ref = _array_store.add(buf); _ops.copied_labels(buf); - _array_store.remove(ref); return new_ref; } diff --git a/searchlib/src/vespa/searchlib/tensor/tensor_buffer_store.h b/searchlib/src/vespa/searchlib/tensor/tensor_buffer_store.h index 6611660b410..1b5520233e1 100644 --- a/searchlib/src/vespa/searchlib/tensor/tensor_buffer_store.h +++ b/searchlib/src/vespa/searchlib/tensor/tensor_buffer_store.h @@ -27,7 +27,7 @@ public: TensorBufferStore(const vespalib::eval::ValueType& tensor_type, std::shared_ptr<vespalib::alloc::MemoryAllocator> allocator, uint32_t max_small_subspaces_type_id); ~TensorBufferStore(); void holdTensor(EntryRef ref) override; - EntryRef move(EntryRef ref) override; + EntryRef move_on_compact(EntryRef ref) override; vespalib::MemoryUsage update_stat(const vespalib::datastore::CompactionStrategy& compaction_strategy) override; std::unique_ptr<vespalib::datastore::ICompactionContext> start_compact(const vespalib::datastore::CompactionStrategy& compaction_strategy) override; EntryRef store_tensor(const vespalib::eval::Value& tensor) override; |