Skip to content
  • Lei Jin's avatar
    introduce ImmutableOptions · 5665e5e2
    Lei Jin authored
    Summary:
    As a preparation to support updating some options dynamically, I'd like
    to first introduce ImmutableOptions, which is a subset of Options that
    cannot be changed during the course of a DB lifetime without restart.
    
    ColumnFamily will keep both Options and ImmutableOptions. Any component
    below ColumnFamily should only take ImmutableOptions in their
    constructor. Other options should be taken from APIs, which will be
    allowed to adjust dynamically.
    
    I am yet to make changes to memtable and other related classes to take
    ImmutableOptions in their ctor. That can be done in a seprate diff as
    this one is already pretty big.
    
    Test Plan: make all check
    
    Reviewers: yhchiang, igor, sdong
    
    Reviewed By: sdong
    
    Subscribers: leveldb, dhruba
    
    Differential Revision: https://reviews.facebook.net/D22545
    5665e5e2