summaryrefslogtreecommitdiffstats
path: root/searchlib/src/tests/docstore/logdatastore/logdatastore_test.cpp
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2023-03-14 15:57:32 +0100
committerGitHub <noreply@github.com>2023-03-14 15:57:32 +0100
commit4f53639e4c262a9806d05b24114aee40b1f9336b (patch)
tree5e16dbfc400849f83e3b3189a868cc771cd30cbb /searchlib/src/tests/docstore/logdatastore/logdatastore_test.cpp
parent12a906cd6d29c637cbbada5a881a3636a27885e0 (diff)
parent880d37d8adbd904c2701a8ce35fd4fb9e60da946 (diff)
Merge pull request #26433 from vespa-engine/balder/also-consider-static-cost-of-caches
Balder/also consider static cost of caches
Diffstat (limited to 'searchlib/src/tests/docstore/logdatastore/logdatastore_test.cpp')
-rw-r--r--searchlib/src/tests/docstore/logdatastore/logdatastore_test.cpp33
1 files changed, 21 insertions, 12 deletions
diff --git a/searchlib/src/tests/docstore/logdatastore/logdatastore_test.cpp b/searchlib/src/tests/docstore/logdatastore/logdatastore_test.cpp
index 258b4d6518a..eec49043282 100644
--- a/searchlib/src/tests/docstore/logdatastore/logdatastore_test.cpp
+++ b/searchlib/src/tests/docstore/logdatastore/logdatastore_test.cpp
@@ -497,20 +497,20 @@ private:
}
bool allowVisitCaching() const override { return _allowVisitCaching; }
private:
- VisitCacheStore &_vcs;
- vespalib::hash_set<uint32_t> _expected;
- vespalib::hash_set<uint32_t> _actual;
- bool _allowVisitCaching;
+ VisitCacheStore &_vcs;
+ vespalib::hash_set<uint32_t> _expected;
+ vespalib::hash_set<uint32_t> _actual;
+ bool _allowVisitCaching;
};
- DirectoryHandler _myDir;
- document::DocumentTypeRepo _repo;
- LogDocumentStore::Config _config;
- DummyFileHeaderContext _fileHeaderContext;
- vespalib::ThreadStackExecutor _executor;
- MyTlSyncer _tlSyncer;
+ DirectoryHandler _myDir;
+ document::DocumentTypeRepo _repo;
+ LogDocumentStore::Config _config;
+ DummyFileHeaderContext _fileHeaderContext;
+ vespalib::ThreadStackExecutor _executor;
+ MyTlSyncer _tlSyncer;
std::unique_ptr<LogDocumentStore> _datastore;
- std::map<uint32_t, Document::UP> _inserted;
- SerialNum _serial;
+ std::map<uint32_t, Document::UP> _inserted;
+ SerialNum _serial;
};
VisitCacheStore::VerifyVisitor::VerifyVisitor(VisitCacheStore & vcs, std::vector<uint32_t> lids, bool allowCaching)
@@ -560,6 +560,15 @@ verifyCacheStats(CacheStats cs, size_t hits, size_t misses, size_t elements, siz
EXPECT_GREATER_EQUAL(memory_used+20, cs.memory_used);
}
+TEST("Control static memory usage") {
+ VisitCacheStore vcs(DocumentStore::Config::UpdateStrategy::UPDATE);
+ IDocumentStore &ds = vcs.getStore();
+ vespalib::MemoryUsage usage = ds.getMemoryUsage();
+ constexpr size_t mutex_size = sizeof(std::mutex) * 2 * (113 + 1); // sizeof(std::mutex) is platform dependent
+ EXPECT_EQUAL(74580 + mutex_size, usage.allocatedBytes());
+ EXPECT_EQUAL(952u + mutex_size, usage.usedBytes());
+}
+
TEST("test the update cache strategy") {
VisitCacheStore vcs(DocumentStore::Config::UpdateStrategy::UPDATE);
IDocumentStore & ds = vcs.getStore();