summaryrefslogtreecommitdiffstats
path: root/searchlib
diff options
context:
space:
mode:
authorGeir Storli <geirst@verizonmedia.com>2019-09-13 11:21:56 +0000
committerGeir Storli <geirst@verizonmedia.com>2019-09-13 11:21:56 +0000
commitf3b8582d9708e3cc7d7bb173d6c5abd8184109ef (patch)
treeb27205c4e5de4d7c84ab852556f30c61d3918e06 /searchlib
parent1a92d8fed4801d9e2acd5edfbfa4c2e848af349d (diff)
Rename functions used to free unused values in enum store.
Diffstat (limited to 'searchlib')
-rw-r--r--searchlib/src/tests/attribute/enumstore/enumstore_test.cpp2
-rw-r--r--searchlib/src/vespa/searchlib/attribute/enum_store_dictionary.cpp42
-rw-r--r--searchlib/src/vespa/searchlib/attribute/enum_store_dictionary.h12
-rw-r--r--searchlib/src/vespa/searchlib/attribute/enum_store_loaders.cpp4
-rw-r--r--searchlib/src/vespa/searchlib/attribute/enum_store_loaders.h2
-rw-r--r--searchlib/src/vespa/searchlib/attribute/enumstore.h8
-rw-r--r--searchlib/src/vespa/searchlib/attribute/enumstore.hpp10
-rw-r--r--searchlib/src/vespa/searchlib/attribute/i_enum_store.h6
-rw-r--r--searchlib/src/vespa/searchlib/attribute/i_enum_store_dictionary.h6
-rw-r--r--searchlib/src/vespa/searchlib/attribute/postinglistattribute.cpp2
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>