diff options
author | Geir Storli <geirst@verizonmedia.com> | 2019-04-10 14:36:18 +0000 |
---|---|---|
committer | Geir Storli <geirst@verizonmedia.com> | 2019-04-11 06:48:56 +0000 |
commit | bcf3638e212f8c2babb0e5a647c619a15171d467 (patch) | |
tree | f7fa59d756531d100dd30c5a2c253a12df9d788c | |
parent | 8f8bca4c2869c3747bc1d7f58458d71ddbf81a3b (diff) |
Rename search::memoryindex::DocumentRemover -> FieldIndexRemover.
13 files changed, 37 insertions, 32 deletions
diff --git a/searchlib/CMakeLists.txt b/searchlib/CMakeLists.txt index 6d1695155a8..bf5046d25cb 100644 --- a/searchlib/CMakeLists.txt +++ b/searchlib/CMakeLists.txt @@ -175,9 +175,9 @@ vespa_define_module( src/tests/ld-library-path src/tests/memoryindex/compact_document_words_store src/tests/memoryindex/datastore - src/tests/memoryindex/document_remover src/tests/memoryindex/documentinverter src/tests/memoryindex/field_index + src/tests/memoryindex/field_index_remover src/tests/memoryindex/fieldinverter src/tests/memoryindex/memoryindex src/tests/memoryindex/urlfieldinverter diff --git a/searchlib/src/tests/memoryindex/document_remover/CMakeLists.txt b/searchlib/src/tests/memoryindex/document_remover/CMakeLists.txt deleted file mode 100644 index 04e5b0ec126..00000000000 --- a/searchlib/src/tests/memoryindex/document_remover/CMakeLists.txt +++ /dev/null @@ -1,8 +0,0 @@ -# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -vespa_add_executable(searchlib_document_remover_test_app TEST - SOURCES - document_remover_test.cpp - DEPENDS - searchlib -) -vespa_add_test(NAME searchlib_document_remover_test_app COMMAND searchlib_document_remover_test_app) diff --git a/searchlib/src/tests/memoryindex/field_index/field_index_test.cpp b/searchlib/src/tests/memoryindex/field_index/field_index_test.cpp index bc796c6c617..1d4c39b3097 100644 --- a/searchlib/src/tests/memoryindex/field_index/field_index_test.cpp +++ b/searchlib/src/tests/memoryindex/field_index/field_index_test.cpp @@ -505,7 +505,7 @@ public: class MyDrainRemoves : IFieldIndexRemoveListener { - DocumentRemover &_remover; + FieldIndexRemover &_remover; public: virtual void remove(const vespalib::stringref, uint32_t) override { } diff --git a/searchlib/src/tests/memoryindex/document_remover/.gitignore b/searchlib/src/tests/memoryindex/field_index_remover/.gitignore index 2126f9147bd..2126f9147bd 100644 --- a/searchlib/src/tests/memoryindex/document_remover/.gitignore +++ b/searchlib/src/tests/memoryindex/field_index_remover/.gitignore diff --git a/searchlib/src/tests/memoryindex/field_index_remover/CMakeLists.txt b/searchlib/src/tests/memoryindex/field_index_remover/CMakeLists.txt new file mode 100644 index 00000000000..ef75337c6b6 --- /dev/null +++ b/searchlib/src/tests/memoryindex/field_index_remover/CMakeLists.txt @@ -0,0 +1,8 @@ +# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +vespa_add_executable(searchlib_field_index_remover_test_app TEST + SOURCES + field_index_remover_test.cpp + DEPENDS + searchlib +) +vespa_add_test(NAME searchlib_field_index_remover_test_app COMMAND searchlib_field_index_remover_test_app) diff --git a/searchlib/src/tests/memoryindex/document_remover/document_remover_test.cpp b/searchlib/src/tests/memoryindex/field_index_remover/field_index_remover_test.cpp index 101770d7807..17bee6f1236 100644 --- a/searchlib/src/tests/memoryindex/document_remover/document_remover_test.cpp +++ b/searchlib/src/tests/memoryindex/field_index_remover/field_index_remover_test.cpp @@ -2,7 +2,7 @@ #include <vespa/vespalib/testkit/testapp.h> -#include <vespa/searchlib/memoryindex/document_remover.h> +#include <vespa/searchlib/memoryindex/field_index_remover.h> #include <vespa/searchlib/memoryindex/i_field_index_remove_listener.h> #include <vespa/searchlib/memoryindex/wordstore.h> #include <vespa/vespalib/test/insertion_operators.h> @@ -65,7 +65,7 @@ struct Fixture MockRemoveListener _listener; std::vector<std::unique_ptr<WordStore>> _wordStores; std::vector<std::map<vespalib::string, datastore::EntryRef>> _wordToRefMaps; - std::vector<std::unique_ptr<DocumentRemover>> _removers; + std::vector<std::unique_ptr<FieldIndexRemover>> _removers; Fixture() : _listener(), _wordStores(), @@ -75,7 +75,7 @@ struct Fixture uint32_t numFields = 4; for (uint32_t fieldId = 0; fieldId < numFields; ++fieldId) { _wordStores.push_back(std::make_unique<WordStore>()); - _removers.push_back(std::make_unique<DocumentRemover> + _removers.push_back(std::make_unique<FieldIndexRemover> (*_wordStores.back())); } _wordToRefMaps.resize(numFields); diff --git a/searchlib/src/vespa/searchlib/memoryindex/CMakeLists.txt b/searchlib/src/vespa/searchlib/memoryindex/CMakeLists.txt index 0a0ed50be71..32e0ed42281 100644 --- a/searchlib/src/vespa/searchlib/memoryindex/CMakeLists.txt +++ b/searchlib/src/vespa/searchlib/memoryindex/CMakeLists.txt @@ -3,10 +3,10 @@ vespa_add_library(searchlib_memoryindex OBJECT SOURCES compact_document_words_store.cpp documentinverter.cpp - document_remover.cpp featurestore.cpp field_index.cpp field_index_collection.cpp + field_index_remover.cpp fieldinverter.cpp memoryindex.cpp ordered_field_index_inserter.cpp diff --git a/searchlib/src/vespa/searchlib/memoryindex/documentinverter.cpp b/searchlib/src/vespa/searchlib/memoryindex/documentinverter.cpp index 6f1b86fc540..5eaa51d43ab 100644 --- a/searchlib/src/vespa/searchlib/memoryindex/documentinverter.cpp +++ b/searchlib/src/vespa/searchlib/memoryindex/documentinverter.cpp @@ -178,7 +178,7 @@ DocumentInverter::pushDocuments(FieldIndexCollection &fieldIndexes, uint32_t fieldId = 0; for (auto &inverter : _inverters) { FieldIndex &fieldIndex(**indexFieldIterator); - DocumentRemover &remover(fieldIndex.getDocumentRemover()); + FieldIndexRemover &remover(fieldIndex.getDocumentRemover()); OrderedFieldIndexInserter &inserter(fieldIndex.getInserter()); _pushThreads.execute(fieldId, [inverter(inverter.get()), &remover, &inserter, diff --git a/searchlib/src/vespa/searchlib/memoryindex/field_index.h b/searchlib/src/vespa/searchlib/memoryindex/field_index.h index 3d4cce23f7d..75c4f6c49eb 100644 --- a/searchlib/src/vespa/searchlib/memoryindex/field_index.h +++ b/searchlib/src/vespa/searchlib/memoryindex/field_index.h @@ -3,11 +3,11 @@ #pragma once #include "featurestore.h" +#include "field_index_remover.h" #include "wordstore.h" -#include "document_remover.h" -#include <vespa/searchlib/btree/btreeroot.h> #include <vespa/searchlib/btree/btree.h> #include <vespa/searchlib/btree/btreenodeallocator.h> +#include <vespa/searchlib/btree/btreeroot.h> #include <vespa/searchlib/btree/btreestore.h> #include <vespa/searchlib/index/docidandfeatures.h> #include <vespa/searchlib/index/indexbuilder.h> @@ -89,7 +89,7 @@ private: PostingListStore _postingListStore; FeatureStore _featureStore; uint32_t _fieldId; - DocumentRemover _remover; + FieldIndexRemover _remover; std::unique_ptr<OrderedFieldIndexInserter> _inserter; public: @@ -153,7 +153,7 @@ public: MemoryUsage getMemoryUsage() const; DictionaryTree &getDictionaryTree() { return _dict; } PostingListStore &getPostingListStore() { return _postingListStore; } - DocumentRemover &getDocumentRemover() { return _remover; } + FieldIndexRemover &getDocumentRemover() { return _remover; } void commit() { _remover.flush(); diff --git a/searchlib/src/vespa/searchlib/memoryindex/document_remover.cpp b/searchlib/src/vespa/searchlib/memoryindex/field_index_remover.cpp index b060762d238..0606192f3ac 100644 --- a/searchlib/src/vespa/searchlib/memoryindex/document_remover.cpp +++ b/searchlib/src/vespa/searchlib/memoryindex/field_index_remover.cpp @@ -1,5 +1,6 @@ // Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -#include "document_remover.h" + +#include "field_index_remover.h" #include "i_field_index_remove_listener.h" #include "wordstore.h" #include <vespa/searchlib/common/sort.h> @@ -9,7 +10,7 @@ namespace search::memoryindex { using Builder = CompactDocumentWordsStore::Builder; using Iterator = CompactDocumentWordsStore::Iterator; -DocumentRemover::DocumentRemover(const WordStore &wordStore) +FieldIndexRemover::FieldIndexRemover(const WordStore &wordStore) : _store(), _builder(), _wordFieldDocTuples(), @@ -17,10 +18,10 @@ DocumentRemover::DocumentRemover(const WordStore &wordStore) { } -DocumentRemover::~DocumentRemover() = default; +FieldIndexRemover::~FieldIndexRemover() = default; void -DocumentRemover::remove(uint32_t docId, IFieldIndexRemoveListener &listener) +FieldIndexRemover::remove(uint32_t docId, IFieldIndexRemoveListener &listener) { Iterator itr = _store.get(docId); if (itr.valid()) { @@ -33,13 +34,13 @@ DocumentRemover::remove(uint32_t docId, IFieldIndexRemoveListener &listener) } void -DocumentRemover::insert(datastore::EntryRef wordRef, uint32_t docId) +FieldIndexRemover::insert(datastore::EntryRef wordRef, uint32_t docId) { _wordFieldDocTuples.emplace_back(wordRef, docId); } void -DocumentRemover::flush() +FieldIndexRemover::flush() { if (_wordFieldDocTuples.empty()) { return; diff --git a/searchlib/src/vespa/searchlib/memoryindex/document_remover.h b/searchlib/src/vespa/searchlib/memoryindex/field_index_remover.h index 848c9f04b45..44037c82c6a 100644 --- a/searchlib/src/vespa/searchlib/memoryindex/document_remover.h +++ b/searchlib/src/vespa/searchlib/memoryindex/field_index_remover.h @@ -10,9 +10,13 @@ class IFieldIndexRemoveListener; class WordStore; /** - * Class used to remove documents from the memory index dictionary. + * Class used to handle removal of documents from a FieldIndex. + * + * It tracks all {word, docId} tuples that are inserted into the index, + * and when removing a document, all these {word, docId} tuples are sent to the component + * that is doing the actual removal (IFieldIndexRemoveListener). */ -class DocumentRemover : public IFieldIndexInsertListener { +class FieldIndexRemover : public IFieldIndexInsertListener { private: struct WordFieldDocTuple { datastore::EntryRef _wordRef; @@ -44,8 +48,8 @@ private: const WordStore &_wordStore; public: - DocumentRemover(const WordStore &wordStore); - ~DocumentRemover(); + FieldIndexRemover(const WordStore &wordStore); + ~FieldIndexRemover(); void remove(uint32_t docId, IFieldIndexRemoveListener &inverter); CompactDocumentWordsStore &getStore() { return _store; } const CompactDocumentWordsStore &getStore() const { return _store; } diff --git a/searchlib/src/vespa/searchlib/memoryindex/fieldinverter.cpp b/searchlib/src/vespa/searchlib/memoryindex/fieldinverter.cpp index 1303a93bdce..dd6270dd671 100644 --- a/searchlib/src/vespa/searchlib/memoryindex/fieldinverter.cpp +++ b/searchlib/src/vespa/searchlib/memoryindex/fieldinverter.cpp @@ -459,7 +459,7 @@ struct FullRadix { } void -FieldInverter::applyRemoves(DocumentRemover &remover) +FieldInverter::applyRemoves(FieldIndexRemover &remover) { for (auto docId : _removeDocs) { remover.remove(docId, *this); diff --git a/searchlib/src/vespa/searchlib/memoryindex/fieldinverter.h b/searchlib/src/vespa/searchlib/memoryindex/fieldinverter.h index c254da55f39..ecf2f8d8979 100644 --- a/searchlib/src/vespa/searchlib/memoryindex/fieldinverter.h +++ b/searchlib/src/vespa/searchlib/memoryindex/fieldinverter.h @@ -16,7 +16,7 @@ namespace search::memoryindex { class IOrderedFieldIndexInserter; -class DocumentRemover; +class FieldIndexRemover; class FieldInverter : public IFieldIndexRemoveListener { public: @@ -326,7 +326,7 @@ public: * * @param remover document remover */ - void applyRemoves(DocumentRemover &remover); + void applyRemoves(FieldIndexRemover &remover); /** * Push inverted documents to field index structure using the given inserter. |