• Y
    Expose the initial logger creation error (#10223) · 9586dcf1
    Yanqin Jin 提交于
    Summary:
    https://github.com/facebook/rocksdb/issues/9984 changes the behavior of RocksDB: if logger creation failed during `SanitizeOptions()`,
    `DB::Open()` will fail. However, since `SanitizeOptions()` is called in `DBImpl::DBImpl()`, we cannot
    directly expose the error to caller without some additional work.
    This is a first version proposal which:
    - Adds a new member `init_logger_creation_s` to `DBImpl` to store the result of init logger creation
    - Checks the error during `DB::Open()` and return it to caller if non-ok
    
    This is not very ideal. We can alternatively move the logger creation logic out of the `SanitizeOptions()`.
    Since `SanitizeOptions()` is used in other places, we need to check whether this change breaks anything
    in case other callers of `SanitizeOptions()` assumes that a logger should be created.
    
    Pull Request resolved: https://github.com/facebook/rocksdb/pull/10223
    
    Test Plan: make check
    
    Reviewed By: pdillinger
    
    Differential Revision: D37321717
    
    Pulled By: riversand963
    
    fbshipit-source-id: 58042358a86369d606549dd9938933dd47591c4b
    9586dcf1
db_basic_test.cc 146.8 KB