-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
storage: add range key support for
MVCCIncrementalIterator
This patch adds range key support for `MVCCIncrementalIterator`, filtering them by the time bounds and exposing them via the usual `SimpleMVCCIterator` interface. This comes with a moderate performance penalty in the no-range-key case, mostly due to additional `HasPointAndRange()` checks. This, and the range key paths, will be optimized later. For now, correctness is sufficient, in order to unblock higher-level work. ``` name old time/op new time/op delta MVCCIncrementalIterator/ts=5-24 11.7ms ± 9% 12.1ms ± 3% ~ (p=0.065 n=9+10) MVCCIncrementalIterator/ts=480-24 442µs ± 1% 444µs ± 1% ~ (p=0.094 n=9+9) MVCCIncrementalIteratorForOldData/valueSize=100-24 1.41ms ± 1% 1.49ms ± 1% +5.59% (p=0.000 n=10+10) MVCCIncrementalIteratorForOldData/valueSize=500-24 1.89ms ± 2% 1.98ms ± 2% +4.61% (p=0.000 n=10+10) MVCCIncrementalIteratorForOldData/valueSize=1000-24 2.59ms ± 2% 2.68ms ± 1% +3.33% (p=0.000 n=10+10) MVCCIncrementalIteratorForOldData/valueSize=2000-24 4.15ms ± 2% 4.12ms ± 3% ~ (p=0.481 n=10+10) ``` Release note: None
- Loading branch information
1 parent
27bedc8
commit c8fb855
Showing
5 changed files
with
1,444 additions
and
83 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.