rocksdb
rocksdb copied to clipboard
DB Iterator Seek should reuse SST's Iterator
Expected behavior
DB Iterator Seek should reuse SST's Iterator.
Actual behavior
DB Iterator Seek always create new SST Iterators if target key miss old SST.
Steps to reproduce the behavior
Create a DB iterator and repeatedly calling Seek with different keys hitting different SST.
DB Iterator is an heavy object and it should be reused if possible, thus when DB Iterator is reused the underlying SST's should also be reused, we have add the SST Iter cache to LevelIterator in our in house branch, but it fails several unit tests, we are still inspecting it.
This issue has been resolved by PR #10593