• Y
    Fix deadlock when trying update options when write stalls · 6ea41f85
    Yi Wu 提交于
    Summary:
    When write stalls because of auto compaction is disabled, or stop write trigger is reached,
    user may change these two options to unblock writes. Unfortunately we had issue where the write
    thread will block the attempt to persist the options, thus creating a deadlock. This diff
    fix the issue and add two test cases to detect such deadlock.
    
    Test Plan:
    Run unit tests.
    
    Also, revert db_impl.cc to master (but don't revert `DBImpl::BackgroundCompaction:Finish` sync point) and run db_options_test. Both tests should hit deadlock.
    
    Reviewers: sdong
    
    Reviewed By: sdong
    
    Subscribers: andrewkr, dhruba, leveldb
    
    Differential Revision: https://reviews.facebook.net/D60627
    6ea41f85
src.mk 22.0 KB