• A
    DeleteRange user iterator support · 9e7cf346
    Andrew Kryczka 提交于
    Summary:
    Note: reviewed in  https://reviews.facebook.net/D65115
    
    - DBIter maintains a range tombstone accumulator. We don't cleanup obsolete tombstones yet, so if the user seeks back and forth, the same tombstones would be added to the accumulator multiple times.
    - DBImpl::NewInternalIterator() (used to make DBIter's underlying iterator) adds memtable/L0 range tombstones, L1+ range tombstones are added on-demand during NewSecondaryIterator() (see D62205)
    - DBIter uses ShouldDelete() when advancing to check whether keys are covered by range tombstones
    Closes https://github.com/facebook/rocksdb/pull/1464
    
    Differential Revision: D4131753
    
    Pulled By: ajkr
    
    fbshipit-source-id: be86559
    9e7cf346
db_impl.cc 226.5 KB