Struct raftstore::store::config::Config[][src]

pub struct Config {
    pub prevote: bool,
    pub raftdb_path: String,
    pub capacity: ReadableSize,
    pub raft_base_tick_interval: ReadableDuration,
    pub raft_heartbeat_ticks: usize,
    pub raft_election_timeout_ticks: usize,
    pub raft_min_election_timeout_ticks: usize,
    pub raft_max_election_timeout_ticks: usize,
    pub raft_max_size_per_msg: ReadableSize,
    pub raft_max_inflight_msgs: usize,
    pub raft_entry_max_size: ReadableSize,
    pub raft_log_gc_tick_interval: ReadableDuration,
    pub raft_log_gc_threshold: u64,
    pub raft_log_gc_count_limit: u64,
    pub raft_log_gc_size_limit: ReadableSize,
    pub raft_engine_purge_interval: ReadableDuration,
    pub raft_entry_cache_life_time: ReadableDuration,
    pub raft_reject_transfer_leader_duration: ReadableDuration,
    pub split_region_check_tick_interval: ReadableDuration,
    pub region_split_check_diff: ReadableSize,
    pub region_compact_check_interval: ReadableDuration,
    pub region_compact_check_step: u64,
    pub region_compact_min_tombstones: u64,
    pub region_compact_tombstones_percent: u64,
    pub pd_heartbeat_tick_interval: ReadableDuration,
    pub pd_store_heartbeat_tick_interval: ReadableDuration,
    pub snap_mgr_gc_tick_interval: ReadableDuration,
    pub snap_gc_timeout: ReadableDuration,
    pub lock_cf_compact_interval: ReadableDuration,
    pub lock_cf_compact_bytes_threshold: ReadableSize,
    pub notify_capacity: usize,
    pub messages_per_tick: usize,
    pub max_peer_down_duration: ReadableDuration,
    pub max_leader_missing_duration: ReadableDuration,
    pub abnormal_leader_missing_duration: ReadableDuration,
    pub peer_stale_state_check_interval: ReadableDuration,
    pub leader_transfer_max_log_lag: u64,
    pub snap_apply_batch_size: ReadableSize,
    pub consistency_check_interval: ReadableDuration,
    pub report_region_flow_interval: ReadableDuration,
    pub raft_store_max_leader_lease: ReadableDuration,
    pub right_derive_when_split: bool,
    pub allow_remove_leader: bool,
    pub merge_max_log_gap: u64,
    pub merge_check_tick_interval: ReadableDuration,
    pub use_delete_range: bool,
    pub cleanup_import_sst_interval: ReadableDuration,
    pub local_read_batch_size: u64,
    pub apply_batch_system: BatchSystemConfig,
    pub store_batch_system: BatchSystemConfig,
    pub future_poll_size: usize,
    pub hibernate_regions: bool,
    pub apply_yield_duration: ReadableDuration,
    pub perf_level: PerfLevel,
    // some fields omitted
}

Fields

prevote: boolraftdb_path: Stringcapacity: ReadableSizeraft_base_tick_interval: ReadableDurationraft_heartbeat_ticks: usizeraft_election_timeout_ticks: usizeraft_min_election_timeout_ticks: usizeraft_max_election_timeout_ticks: usizeraft_max_size_per_msg: ReadableSizeraft_max_inflight_msgs: usizeraft_entry_max_size: ReadableSizeraft_log_gc_tick_interval: ReadableDurationraft_log_gc_threshold: u64raft_log_gc_count_limit: u64raft_log_gc_size_limit: ReadableSizeraft_engine_purge_interval: ReadableDurationraft_entry_cache_life_time: ReadableDurationraft_reject_transfer_leader_duration: ReadableDurationsplit_region_check_tick_interval: ReadableDurationregion_split_check_diff: ReadableSize

When size change of region exceed the diff since last check, it will be checked again whether it should be split.

region_compact_check_interval: ReadableDuration

Interval (ms) to check whether start compaction for a region.

region_compact_check_step: u64

Number of regions for each time checking.

region_compact_min_tombstones: u64

Minimum number of tombstones to trigger manual compaction.

region_compact_tombstones_percent: u64

Minimum percentage of tombstones to trigger manual compaction. Should between 1 and 100.

pd_heartbeat_tick_interval: ReadableDurationpd_store_heartbeat_tick_interval: ReadableDurationsnap_mgr_gc_tick_interval: ReadableDurationsnap_gc_timeout: ReadableDurationlock_cf_compact_interval: ReadableDurationlock_cf_compact_bytes_threshold: ReadableSizenotify_capacity: usizemessages_per_tick: usizemax_peer_down_duration: ReadableDuration

When a peer is not active for max_peer_down_duration, the peer is considered to be down and is reported to PD.

max_leader_missing_duration: ReadableDuration

If the leader of a peer is missing for longer than max_leader_missing_duration, the peer would ask pd to confirm whether it is valid in any region. If the peer is stale and is not valid in any region, it will destroy itself.

abnormal_leader_missing_duration: ReadableDuration

Similar to the max_leader_missing_duration, instead it will log warnings and try to alert monitoring systems, if there is any.

peer_stale_state_check_interval: ReadableDurationleader_transfer_max_log_lag: u64snap_apply_batch_size: ReadableSizeconsistency_check_interval: ReadableDurationreport_region_flow_interval: ReadableDurationraft_store_max_leader_lease: ReadableDurationright_derive_when_split: boolallow_remove_leader: boolmerge_max_log_gap: u64

Max log gap allowed to propose merge.

merge_check_tick_interval: ReadableDuration

Interval to re-propose merge.

use_delete_range: boolcleanup_import_sst_interval: ReadableDurationlocal_read_batch_size: u64

Maximum size of every local read task batch.

apply_batch_system: BatchSystemConfigstore_batch_system: BatchSystemConfigfuture_poll_size: usizehibernate_regions: boolapply_yield_duration: ReadableDurationperf_level: PerfLevel

Implementations

impl Config[src]

pub fn new() -> Config[src]

pub fn raft_store_max_leader_lease(&self) -> TimeDuration[src]

pub fn raft_heartbeat_interval(&self) -> Duration[src]

pub fn validate(&mut self) -> Result<()>[src]

pub fn write_into_metrics(&self)[src]

fn write_change_into_metrics(change: ConfigChange)[src]

Trait Implementations

impl Clone for Config[src]

impl<'lt> Configuration<'lt> for Config[src]

type Encoder = Config_encoder_c626a200461aa863<'lt>

impl Debug for Config[src]

impl Default for Config[src]

impl<'de> Deserialize<'de> for Config where
    Config: Default
[src]

impl PartialEq<Config> for Config[src]

impl Serialize for Config[src]

impl StructuralPartialEq for Config[src]

Auto Trait Implementations

impl RefUnwindSafe for Config

impl Send for Config

impl Sync for Config

impl Unpin for Config

impl UnwindSafe for Config

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<V, W> ConvertFrom<W> for V where
    W: ConvertTo<V>, 
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Pointable for T[src]

type Init = T

The type for initializers.

impl<T> Pointable for T[src]

type Init = T

The type for initializers.

impl<T> Same<T> for T[src]

type Output = T

Should always be Self

impl<T> Sealed<T> for T where
    T: ?Sized
[src]

impl<T> SendSyncUnwindSafe for T where
    T: Send + Sync + UnwindSafe + ?Sized
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 
[src]