• G
    Pass the size of blob files to SstFileManager during DB open (#10062) · e2285157
    Gang Liao 提交于
    Summary:
    RocksDB uses the (no longer aptly named) SST file manager (see https://github.com/facebook/rocksdb/wiki/Managing-Disk-Space-Utilization) to track and potentially limit the space used by SST and blob files (as well as to rate-limit the deletion of these data files). The SST file manager tracks the SST and blob file sizes in an in-memory hash map, which has to be rebuilt during DB open. File sizes can be generally obtained by querying the file system; however, there is a performance optimization possibility here since the sizes of SST and blob files are also tracked in the RocksDB MANIFEST, so we can simply pass the file sizes stored there instead of consulting the file system for each file. Currently, this optimization is only implemented for SST files; we would like to extend it to blob files as well.
    
    Pull Request resolved: https://github.com/facebook/rocksdb/pull/10062
    
    Test Plan:
    Add unit tests for the change to the test suite
    ltamasi riversand963  akankshamahajan15
    
    Reviewed By: ltamasi
    
    Differential Revision: D36726621
    
    Pulled By: gangliao
    
    fbshipit-source-id: 4010dc46ef7306142f1c2e0d1c3bf75b196ef82a
    e2285157
mock_env.cc 32.3 KB