• S
    Pre-calculate whether to slow down for too many level 0 files · fbbf0d14
    Siying Dong 提交于
    Summary: Currently in DBImpl::MakeRoomForWrite(), we do  "versions_->NumLevelFiles(0) >= options_.level0_slowdown_writes_trigger" to check whether the writer thread needs to slow down. However, versions_->NumLevelFiles(0) is slightly more expensive than we expected. By caching the result of the comparison when installing a new version, we can avoid this function call every time.
    
    Test Plan:
    make all check
    Manually trigger this behavior by applying universal compaction style and make sure inserts are made slow after there are certain number of files.
    
    Reviewers: haobo, kailiu, igor
    
    Reviewed By: kailiu
    
    CC: nkg-, leveldb
    
    Differential Revision: https://reviews.facebook.net/D15141
    fbbf0d14
version_set.cc 105.4 KB