mirror of
https://github.com/versity/scoutfs.git
synced 2026-07-31 20:36:42 +00:00
52c315942fc05d1d4b9d32947ad607e1a43bd290
The manifests for level 0 blocks always claimed that they could contain all keys. That causes a lot of extra bloom filter lookups when in fact the blocks contain a very small range of keys. It's true that we don't know what items a dirty segment is going to contain, don't want to update the manfiest at every insertion, and have to find the items in the segments in regular searching. But when they're finalized we know the items they'll contain and can update the manifest. We do that by initializing the item block range to nonsense and extending it as items are added. When it's finalized we update the manifest in memory and in the ring. Signed-off-by: Zach Brown <zab@versity.com>
Description
No description provided
7 MiB
Languages
C
86.4%
Shell
9.9%
Roff
2.5%
TeX
0.8%
Makefile
0.4%