diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2020-09-10 09:14:01 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-09-10 09:14:01 +0200 |
commit | 4ea99060d59413de4e37c81bc4fd77401d8fb9be (patch) | |
tree | 316a4009844ea11dc9d359ab2a7347831daa1b4f /searchcore | |
parent | 10349344c212707b6eec358b82326baf6a251065 (diff) | |
parent | b8dfc7183bc76f3a70d7dc1855550fb662ee2020 (diff) |
Merge pull request #14343 from vespa-engine/toregge/compact-document-metastore-lid-space-when-replay-is-done
Compact document meta store lid space when replay is done
Diffstat (limited to 'searchcore')
-rw-r--r-- | searchcore/src/vespa/searchcore/proton/server/storeonlydocsubdb.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/server/storeonlydocsubdb.cpp b/searchcore/src/vespa/searchcore/proton/server/storeonlydocsubdb.cpp index 97d7e96b5a0..07ae2adba99 100644 --- a/searchcore/src/vespa/searchcore/proton/server/storeonlydocsubdb.cpp +++ b/searchcore/src/vespa/searchcore/proton/server/storeonlydocsubdb.cpp @@ -179,8 +179,12 @@ void StoreOnlyDocSubDB::onReplayDone() { _dms->constructFreeList(); + auto stats = _dms->getLidUsageStats(); + uint32_t docIdLimit = stats.getHighestUsedLid() + 1; + assert(docIdLimit <= _dms->getCommittedDocIdLimit()); + _dms->compactLidSpace(docIdLimit); + _dms->unblockShrinkLidSpace(); _dms->shrinkLidSpace(); - uint32_t docIdLimit = _dms->getCommittedDocIdLimit(); auto &docStore = _rSummaryMgr->getBackingStore(); std::promise<void> promise; auto future = promise.get_future(); |