• Y
    Fix a bug of secondary instance sequence going backward (#8653) · f235f4b0
    Yanqin Jin 提交于
    Summary:
    Recent refactor of `ReactiveVersionSet::ReadAndApply()` uses
    `ManifestTailer` whose `Iterate()` method can cause the db's
    `last_sequence_` to go backward. Consequently, read requests can see
    out-dated data. For example, latest changes to the primary will not be
    seen on the secondary even after a `TryCatchUpWithPrimary()` if no new
    write batches are read from the WALs and no new MANIFEST entries are
    read from the MANIFEST.
    
    Fix the bug so that `VersionEditHandler::CheckIterationResult` will
    never decrease `last_sequence_`, `last_allocated_sequence_` and
    `last_published_sequence_`.
    
    Pull Request resolved: https://github.com/facebook/rocksdb/pull/8653
    
    Test Plan: make check
    
    Reviewed By: jay-zhuang
    
    Differential Revision: D30272084
    
    Pulled By: riversand963
    
    fbshipit-source-id: c6a49c534b2509b93ef62d8936ed0acd5b860eaa
    f235f4b0
可在Tags中查看这些版本中当前仓库的状态.
HISTORY.md 180.1 KB