summaryrefslogtreecommitdiffstats
path: root/searchcore
diff options
context:
space:
mode:
authorHåvard Pettersen <havardpe@yahooinc.com>2022-05-19 13:03:14 +0000
committerHåvard Pettersen <havardpe@yahooinc.com>2022-05-19 13:03:14 +0000
commitc011b3507dda9fcf5b56c3a8011e7f56dfb7b34a (patch)
treeb0d0d82b13b7b9b7ea5d3ca8df76f1a7e5dacf49 /searchcore
parentf17c4fe7de4c55f5c4ee61897eab8c2f588d8405 (diff)
take read guards while accessing bitvectors
Diffstat (limited to 'searchcore')
-rw-r--r--searchcore/src/vespa/searchcore/proton/documentmetastore/documentmetastoreflushtarget.cpp1
-rw-r--r--searchcore/src/vespa/searchcore/proton/server/storeonlydocsubdb.cpp6
2 files changed, 6 insertions, 1 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/documentmetastore/documentmetastoreflushtarget.cpp b/searchcore/src/vespa/searchcore/proton/documentmetastore/documentmetastoreflushtarget.cpp
index 9164797b86f..9f6b1befcdd 100644
--- a/searchcore/src/vespa/searchcore/proton/documentmetastore/documentmetastoreflushtarget.cpp
+++ b/searchcore/src/vespa/searchcore/proton/documentmetastore/documentmetastoreflushtarget.cpp
@@ -223,6 +223,7 @@ DocumentMetaStoreFlushTarget::initFlush(SerialNum currentSerial, std::shared_ptr
uint64_t
DocumentMetaStoreFlushTarget::getApproxBytesToWriteToDisk() const
{
+ auto guard = _dms->getGuard();
return _dms->getEstimatedSaveByteSize();
}
diff --git a/searchcore/src/vespa/searchcore/proton/server/storeonlydocsubdb.cpp b/searchcore/src/vespa/searchcore/proton/server/storeonlydocsubdb.cpp
index 6b1356da50e..2736a1eaa6f 100644
--- a/searchcore/src/vespa/searchcore/proton/server/storeonlydocsubdb.cpp
+++ b/searchcore/src/vespa/searchcore/proton/server/storeonlydocsubdb.cpp
@@ -142,7 +142,11 @@ StoreOnlyDocSubDB::clearViews() {
size_t
StoreOnlyDocSubDB::getNumDocs() const
{
- return (_metaStoreCtx) ? _metaStoreCtx->get().getNumUsedLids() : 0u;
+ if (_metaStoreCtx) {
+ auto guard = _metaStoreCtx->getReadGuard();
+ return guard->get().getNumUsedLids();
+ }
+ return 0u;
}
size_t