• Y
    Fix the bug where compaction does not fail when RocksDB can't create a new file. · 3772a3d0
    Yueh-Hsuan Chiang 提交于
    Summary:
    This diff has two fixes.
    
    1. Fix the bug where compaction does not fail when RocksDB can't create a new file.
    2. When NewWritableFiles() fails in OpenCompactionOutputFiles(), previously such fail-to-created file will be still be included as a compaction output.  This patch also fixes this bug.
    3. Allow VersionEdit::EncodeTo() to return Status and add basic check.
    
    Test Plan:
    ./version_edit_test
    export ROCKSDB_TESTS=FileCreationRandomFailure
    ./db_test
    
    Reviewers: ljin, sdong, nkg-, igor
    
    Reviewed By: igor
    
    Subscribers: dhruba, leveldb
    
    Differential Revision: https://reviews.facebook.net/D25581
    3772a3d0
db_impl.cc 167.8 KB