• S
    L0 Subcompaction to trim input files (#9802) · e03f8a0c
    sdong 提交于
    Summary:
    When sub compaction is decided for L0->L1 compaction, most of the cases, all L0 files will be involved in all sub compactions. However, it is not always the case. When files are generally (but not strictly) inserted in sequential order, there can be a subset of L0 files invovled. Yet RocksDB always open all those L0 files, and build an iterator, read many of the files' first of last block with expensive readahead. We trim some input files to reduce overhead a little bit.
    
    Pull Request resolved: https://github.com/facebook/rocksdb/pull/9802
    
    Test Plan: Add a unit test to cover this case and manually validate the behavior while running the test.
    
    Reviewed By: ajkr
    
    Differential Revision: D35371031
    
    fbshipit-source-id: 701ed7375b5cbe41672e93b38fe8a1503dad08b6
    e03f8a0c
compaction_job.cc 119.6 KB