diff options
author | Geir Storli <geirst@verizonmedia.com> | 2019-09-13 11:21:56 +0000 |
---|---|---|
committer | Geir Storli <geirst@verizonmedia.com> | 2019-09-13 11:21:56 +0000 |
commit | f3b8582d9708e3cc7d7bb173d6c5abd8184109ef (patch) | |
tree | b27205c4e5de4d7c84ab852556f30c61d3918e06 /searchlib | |
parent | 1a92d8fed4801d9e2acd5edfbfa4c2e848af349d (diff) |
Rename functions used to free unused values in enum store.
Diffstat (limited to 'searchlib')
10 files changed, 47 insertions, 47 deletions
diff --git a/searchlib/src/tests/attribute/enumstore/enumstore_test.cpp b/searchlib/src/tests/attribute/enumstore/enumstore_test.cpp index cd02c099f1f..de45505e523 100644 --- a/searchlib/src/tests/attribute/enumstore/enumstore_test.cpp +++ b/searchlib/src/tests/attribute/enumstore/enumstore_test.cpp @@ -477,7 +477,7 @@ TYPED_TEST(LoaderTest, store_is_instantiated_with_enumerated_postings_loader) this->set_ref_count(0, 1, loader); this->set_ref_count(1, 2, loader); this->set_ref_count(3, 4, loader); - loader.free_unused_enums(); + loader.free_unused_values(); this->expect_values_in_store(); } diff --git a/searchlib/src/vespa/searchlib/attribute/enum_store_dictionary.cpp b/searchlib/src/vespa/searchlib/attribute/enum_store_dictionary.cpp index 6c6b7f3200e..d2f3792e8c1 100644 --- a/searchlib/src/vespa/searchlib/attribute/enum_store_dictionary.cpp +++ b/searchlib/src/vespa/searchlib/attribute/enum_store_dictionary.cpp @@ -23,6 +23,19 @@ namespace search { using btree::BTreeNode; template <typename DictionaryT> +void +EnumStoreDictionary<DictionaryT>::remove_unused_values(const IndexSet& unused, + const datastore::EntryComparator& cmp) +{ + if (unused.empty()) { + return; + } + for (const auto& ref : unused) { + this->remove(cmp, ref); + } +} + +template <typename DictionaryT> EnumStoreDictionary<DictionaryT>::EnumStoreDictionary(IEnumStore& enumStore) : ParentUniqueStoreDictionary(), _enumStore(enumStore) @@ -48,40 +61,27 @@ EnumStoreDictionary<DictionaryT>::set_ref_counts(const EnumVector &hist) template <typename DictionaryT> void -EnumStoreDictionary<DictionaryT>::removeUnusedEnums(const IndexSet& unused, - const datastore::EntryComparator& cmp) -{ - if (unused.empty()) { - return; - } - for (const auto& ref : unused) { - this->remove(cmp, ref); - } -} - -template <typename DictionaryT> -void -EnumStoreDictionary<DictionaryT>::freeUnusedEnums(const datastore::EntryComparator& cmp) +EnumStoreDictionary<DictionaryT>::free_unused_values(const datastore::EntryComparator& cmp) { IndexSet unused; // find unused enums for (auto iter = this->_dict.begin(); iter.valid(); ++iter) { - _enumStore.freeUnusedEnum(iter.getKey(), unused); + _enumStore.free_value_if_unused(iter.getKey(), unused); } - removeUnusedEnums(unused, cmp); + remove_unused_values(unused, cmp); } template <typename DictionaryT> void -EnumStoreDictionary<DictionaryT>::freeUnusedEnums(const IndexSet& toRemove, - const datastore::EntryComparator& cmp) +EnumStoreDictionary<DictionaryT>::free_unused_values(const IndexSet& to_remove, + const datastore::EntryComparator& cmp) { IndexSet unused; - for (const auto& index : toRemove) { - _enumStore.freeUnusedEnum(index, unused); + for (const auto& index : to_remove) { + _enumStore.free_value_if_unused(index, unused); } - removeUnusedEnums(unused, cmp); + remove_unused_values(unused, cmp); } template <typename DictionaryT> diff --git a/searchlib/src/vespa/searchlib/attribute/enum_store_dictionary.h b/searchlib/src/vespa/searchlib/attribute/enum_store_dictionary.h index f2ab7a0fa9e..b2df42a5411 100644 --- a/searchlib/src/vespa/searchlib/attribute/enum_store_dictionary.h +++ b/searchlib/src/vespa/searchlib/attribute/enum_store_dictionary.h @@ -24,6 +24,9 @@ private: IEnumStore& _enumStore; + void remove_unused_values(const IndexSet& unused, + const datastore::EntryComparator& cmp); + public: EnumStoreDictionary(IEnumStore& enumStore); @@ -35,13 +38,10 @@ public: uint32_t getNumUniques() const override; void set_ref_counts(const EnumVector &hist) override; - void removeUnusedEnums(const IndexSet& unused, - const datastore::EntryComparator& cmp); - - void freeUnusedEnums(const datastore::EntryComparator& cmp) override; + void free_unused_values(const datastore::EntryComparator& cmp) override; - void freeUnusedEnums(const IndexSet& toRemove, - const datastore::EntryComparator& cmp) override; + void free_unused_values(const IndexSet& to_remove, + const datastore::EntryComparator& cmp) override; bool findIndex(const datastore::EntryComparator& cmp, Index& idx) const override; bool findFrozenIndex(const datastore::EntryComparator& cmp, Index& idx) const override; diff --git a/searchlib/src/vespa/searchlib/attribute/enum_store_loaders.cpp b/searchlib/src/vespa/searchlib/attribute/enum_store_loaders.cpp index 98560061be4..5e052e046fd 100644 --- a/searchlib/src/vespa/searchlib/attribute/enum_store_loaders.cpp +++ b/searchlib/src/vespa/searchlib/attribute/enum_store_loaders.cpp @@ -50,9 +50,9 @@ EnumeratedPostingsLoader::set_ref_count(Index idx, uint32_t ref_count) } void -EnumeratedPostingsLoader::free_unused_enums() +EnumeratedPostingsLoader::free_unused_values() { - _store.freeUnusedEnums(); + _store.free_unused_values(); } } diff --git a/searchlib/src/vespa/searchlib/attribute/enum_store_loaders.h b/searchlib/src/vespa/searchlib/attribute/enum_store_loaders.h index 71c17a71661..c8b6d72f5bf 100644 --- a/searchlib/src/vespa/searchlib/attribute/enum_store_loaders.h +++ b/searchlib/src/vespa/searchlib/attribute/enum_store_loaders.h @@ -60,7 +60,7 @@ public: } bool is_folded_change(const Index& lhs, const Index& rhs) const; void set_ref_count(Index idx, uint32_t ref_count); - void free_unused_enums(); + void free_unused_values(); }; } diff --git a/searchlib/src/vespa/searchlib/attribute/enumstore.h b/searchlib/src/vespa/searchlib/attribute/enumstore.h index e16479072a2..b1422a2d3d0 100644 --- a/searchlib/src/vespa/searchlib/attribute/enumstore.h +++ b/searchlib/src/vespa/searchlib/attribute/enumstore.h @@ -58,7 +58,7 @@ private: EnumStoreT(const EnumStoreT & rhs) = delete; EnumStoreT & operator=(const EnumStoreT & rhs) = delete; - void freeUnusedEnum(Index idx, IndexSet& unused) override; + void free_value_if_unused(Index idx, IndexSet &unused) override; const datastore::UniqueStoreEntryBase& get_entry_base(Index idx) const { return _store.get_allocator().get_wrapped(idx); @@ -170,7 +170,7 @@ public: } } void commit() { - _store.freeUnusedEnums(_possibly_unused); + _store.free_unused_values(_possibly_unused); } }; @@ -200,8 +200,8 @@ public: std::vector<IEnumStore::EnumHandle> findFoldedEnums(EntryType value) const; Index insert(EntryType value); bool findIndex(EntryType value, Index &idx) const; - void freeUnusedEnums() override; - void freeUnusedEnums(const IndexSet& toRemove); + void free_unused_values() override; + void free_unused_values(const IndexSet& to_remove); vespalib::MemoryUsage update_stat() override; std::unique_ptr<EnumIndexRemapper> consider_compact(const CompactionStrategy& compaction_strategy) override; std::unique_ptr<EnumIndexRemapper> compact_worst(bool compact_memory, bool compact_address_space) override; diff --git a/searchlib/src/vespa/searchlib/attribute/enumstore.hpp b/searchlib/src/vespa/searchlib/attribute/enumstore.hpp index 908d25b62e2..996c6271f4f 100644 --- a/searchlib/src/vespa/searchlib/attribute/enumstore.hpp +++ b/searchlib/src/vespa/searchlib/attribute/enumstore.hpp @@ -23,7 +23,7 @@ namespace search { template <typename EntryT> -void EnumStoreT<EntryT>::freeUnusedEnum(Index idx, IndexSet& unused) +void EnumStoreT<EntryT>::free_value_if_unused(Index idx, IndexSet& unused) { const auto& entry = get_entry_base(idx); if (entry.get_ref_count() == 0) { @@ -194,18 +194,18 @@ EnumStoreT<EntryT>::findIndex(EntryType value, Index &idx) const template <typename EntryT> void -EnumStoreT<EntryT>::freeUnusedEnums() +EnumStoreT<EntryT>::free_unused_values() { auto cmp = make_comparator(); - _dict->freeUnusedEnums(cmp); + _dict->free_unused_values(cmp); } template <typename EntryT> void -EnumStoreT<EntryT>::freeUnusedEnums(const IndexSet& toRemove) +EnumStoreT<EntryT>::free_unused_values(const IndexSet& to_remove) { auto cmp = make_comparator(); - _dict->freeUnusedEnums(toRemove, cmp); + _dict->free_unused_values(to_remove, cmp); } template <typename EntryT> diff --git a/searchlib/src/vespa/searchlib/attribute/i_enum_store.h b/searchlib/src/vespa/searchlib/attribute/i_enum_store.h index 4edc30dae45..b0fbfb3f3e4 100644 --- a/searchlib/src/vespa/searchlib/attribute/i_enum_store.h +++ b/searchlib/src/vespa/searchlib/attribute/i_enum_store.h @@ -56,8 +56,8 @@ public: virtual ssize_t load_unique_values(const void* src, size_t available, IndexVector& idx) = 0; virtual void set_ref_count(Index idx, uint32_t ref_count) = 0; virtual void set_ref_counts(const EnumVector &histogram) = 0; - virtual void freeUnusedEnum(Index idx, IndexSet& unused) = 0; - virtual void freeUnusedEnums() = 0; + virtual void free_value_if_unused(Index idx, IndexSet &unused) = 0; + virtual void free_unused_values() = 0; virtual bool foldedChange(const Index& idx1, const Index& idx2) const = 0; virtual IEnumStoreDictionary& getEnumStoreDict() = 0; virtual const IEnumStoreDictionary& getEnumStoreDict() const = 0; @@ -94,7 +94,7 @@ public: set_ref_count(ti.getKey(), *hi); } assert(!ti.valid()); - freeUnusedEnums(); + free_unused_values(); } }; diff --git a/searchlib/src/vespa/searchlib/attribute/i_enum_store_dictionary.h b/searchlib/src/vespa/searchlib/attribute/i_enum_store_dictionary.h index e70b059b7c9..21999304545 100644 --- a/searchlib/src/vespa/searchlib/attribute/i_enum_store_dictionary.h +++ b/searchlib/src/vespa/searchlib/attribute/i_enum_store_dictionary.h @@ -40,9 +40,9 @@ public: virtual uint32_t getNumUniques() const = 0; virtual void set_ref_counts(const EnumVector& hist) = 0; - virtual void freeUnusedEnums(const datastore::EntryComparator& cmp) = 0; - virtual void freeUnusedEnums(const IndexSet& toRemove, - const datastore::EntryComparator& cmp) = 0; + virtual void free_unused_values(const datastore::EntryComparator& cmp) = 0; + virtual void free_unused_values(const IndexSet& to_remove, + const datastore::EntryComparator& cmp) = 0; virtual bool findIndex(const datastore::EntryComparator& cmp, Index& idx) const = 0; virtual bool findFrozenIndex(const datastore::EntryComparator& cmp, Index& idx) const = 0; virtual std::vector<attribute::IAttributeVector::EnumHandle> diff --git a/searchlib/src/vespa/searchlib/attribute/postinglistattribute.cpp b/searchlib/src/vespa/searchlib/attribute/postinglistattribute.cpp index 879706dc09d..a7bf1ffb037 100644 --- a/searchlib/src/vespa/searchlib/attribute/postinglistattribute.cpp +++ b/searchlib/src/vespa/searchlib/attribute/postinglistattribute.cpp @@ -108,7 +108,7 @@ PostingListAttributeBase<P>::handle_load_posting_lists_and_update_enum_store(enu &postings._removals[0], &postings._removals[0] + postings._removals.size()); posting_itr.writeData(newIndex.ref()); - loader.free_unused_enums(); + loader.free_unused_values(); } template <typename P> |