summaryrefslogtreecommitdiffstats
path: root/vespalib
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@broadpark.no>2020-09-30 12:24:38 +0200
committerTor Egge <Tor.Egge@broadpark.no>2020-09-30 12:24:38 +0200
commit2d0b7bdf3469302a9359aa42c7c11efa644613a2 (patch)
tree47ff5733955db02283a65afdfeca4ea6c0a5b3e2 /vespalib
parentff205ce5e2eccafeb0957007fb2671f1488e57c3 (diff)
Use memory usage for unique store values but not for unique store dictionary
when checking if compaction should be performed.
Diffstat (limited to 'vespalib')
-rw-r--r--vespalib/src/vespa/vespalib/datastore/unique_store.h2
-rw-r--r--vespalib/src/vespa/vespalib/datastore/unique_store.hpp4
2 files changed, 4 insertions, 2 deletions
diff --git a/vespalib/src/vespa/vespalib/datastore/unique_store.h b/vespalib/src/vespa/vespalib/datastore/unique_store.h
index a47792de402..0a1593f3db3 100644
--- a/vespalib/src/vespa/vespalib/datastore/unique_store.h
+++ b/vespalib/src/vespa/vespalib/datastore/unique_store.h
@@ -56,6 +56,8 @@ public:
void remove(EntryRef ref);
std::unique_ptr<Remapper> compact_worst(bool compact_memory, bool compact_address_space);
vespalib::MemoryUsage getMemoryUsage() const;
+ vespalib::MemoryUsage get_values_memory_usage() const { return _store.getMemoryUsage(); }
+ vespalib::MemoryUsage get_dictionary_memory_usage() const { return _dict->get_memory_usage(); }
vespalib::AddressSpace get_address_space_usage() const;
// TODO: Consider exposing only the needed functions from allocator
diff --git a/vespalib/src/vespa/vespalib/datastore/unique_store.hpp b/vespalib/src/vespa/vespalib/datastore/unique_store.hpp
index 8b9525f5ad7..a87ec245308 100644
--- a/vespalib/src/vespa/vespalib/datastore/unique_store.hpp
+++ b/vespalib/src/vespa/vespalib/datastore/unique_store.hpp
@@ -176,8 +176,8 @@ template <typename EntryT, typename RefT, typename Compare, typename Allocator>
vespalib::MemoryUsage
UniqueStore<EntryT, RefT, Compare, Allocator>::getMemoryUsage() const
{
- vespalib::MemoryUsage usage = _store.getMemoryUsage();
- usage.merge(_dict->get_memory_usage());
+ vespalib::MemoryUsage usage = get_values_memory_usage();
+ usage.merge(get_dictionary_memory_usage());
return usage;
}