diff options
3 files changed, 13 insertions, 0 deletions
diff --git a/searchlib/src/vespa/searchlib/attribute/reference_attribute.cpp b/searchlib/src/vespa/searchlib/attribute/reference_attribute.cpp index 147c656ccfd..7e17ba3a808 100644 --- a/searchlib/src/vespa/searchlib/attribute/reference_attribute.cpp +++ b/searchlib/src/vespa/searchlib/attribute/reference_attribute.cpp @@ -179,7 +179,9 @@ ReferenceAttribute::onUpdateStat() { MemoryUsage total = _store.getMemoryUsage(); _cachedUniqueStoreMemoryUsage = total; + total.mergeGenerationHeldBytes(getGenerationHolder().getHeldBytes()); total.merge(_indices.getMemoryUsage()); + total.merge(_referenceMappings.getMemoryUsage()); updateStatistics(getTotalValueCount(), getUniqueValueCount(), total.allocatedBytes(), total.usedBytes(), total.deadBytes(), total.allocatedBytesOnHold()); diff --git a/searchlib/src/vespa/searchlib/attribute/reference_mappings.cpp b/searchlib/src/vespa/searchlib/attribute/reference_mappings.cpp index 175dc05396d..881c0745582 100644 --- a/searchlib/src/vespa/searchlib/attribute/reference_mappings.cpp +++ b/searchlib/src/vespa/searchlib/attribute/reference_mappings.cpp @@ -127,4 +127,13 @@ ReferenceMappings::shrink(uint32_t docIdLimit) _referencedLids.shrink(docIdLimit); } +MemoryUsage +ReferenceMappings::getMemoryUsage() +{ + MemoryUsage usage = _reverseMapping.getMemoryUsage(); + usage.merge(_reverseMappingIndices.getMemoryUsage()); + usage.merge(_referencedLids.getMemoryUsage()); + return usage; +} + } diff --git a/searchlib/src/vespa/searchlib/attribute/reference_mappings.h b/searchlib/src/vespa/searchlib/attribute/reference_mappings.h index 9880bf44efc..631a610f773 100644 --- a/searchlib/src/vespa/searchlib/attribute/reference_mappings.h +++ b/searchlib/src/vespa/searchlib/attribute/reference_mappings.h @@ -67,6 +67,8 @@ public: // Setup mapping after load void buildReverseMapping(const Reference &entry, const std::vector<ReverseMapping::KeyDataType> &adds); + MemoryUsage getMemoryUsage(); + // Reader API, reader must hold generation guard template <typename FunctionType> void |