diff options
author | Tor Egge <Tor.Egge@broadpark.no> | 2020-09-09 18:49:35 +0200 |
---|---|---|
committer | Tor Egge <Tor.Egge@broadpark.no> | 2020-09-09 18:49:35 +0200 |
commit | b8dfc7183bc76f3a70d7dc1855550fb662ee2020 (patch) | |
tree | 212343090c304fb825816a3d459ceb43f01b732d /searchcore | |
parent | cd920b47574fc54bb621d4bfafd045c6a3edbf17 (diff) |
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(); |