mz_controller_types/
dyncfgs.rs1use std::time::Duration;
13
14use mz_dyncfg::{Config, ConfigSet, ParameterScope};
15
16pub const CONTROLLER_PAST_GENERATION_REPLICA_CLEANUP_RETRY_INTERVAL: Config<Duration> = Config::new(
18 "controller_past_generation_replica_cleanup_retry_interval",
19 Duration::from_secs(300),
20 "The interval at which to attempt to retry cleaning up replicas from past generations.",
21 ParameterScope::Environment,
22);
23
24pub const ENABLE_0DT_DEPLOYMENT_SOURCES: Config<bool> = Config::new(
25 "enable_0dt_deployment_sources",
26 true,
27 "Whether to enable zero-downtime deployments for sources that support it (experimental).",
28 ParameterScope::Environment,
29);
30
31pub const WALLCLOCK_LAG_RECORDING_INTERVAL: Config<Duration> = Config::new(
32 "wallclock_lag_recording_interval",
33 Duration::from_secs(60),
34 "The interval at which to record `WallclockLagHistory` introspection.",
35 ParameterScope::Environment,
36);
37
38pub const WALLCLOCK_LAG_HISTOGRAM_PERIOD_INTERVAL: Config<Duration> = Config::new(
39 "wallclock_lag_histogram_period_interval",
40 Duration::from_secs(24 * 60 * 60),
41 "The period interval of histograms in `WallclockLagHistogram` introspection.",
42 ParameterScope::Environment,
43);
44
45pub const ENABLE_TIMELY_ZERO_COPY: Config<bool> = Config::new(
52 "enable_timely_zero_copy",
53 false,
54 "Enable the zero copy allocator (timely dataflow).",
55 ParameterScope::Replica,
56);
57
58pub const ENABLE_TIMELY_ZERO_COPY_LGALLOC: Config<bool> = Config::new(
59 "enable_timely_zero_copy_lgalloc",
60 false,
61 "Enable backing the zero copy allocator with lgalloc (timely dataflow).",
62 ParameterScope::Replica,
63);
64
65pub const TIMELY_ZERO_COPY_LIMIT: Config<Option<usize>> = Config::new(
66 "timely_zero_copy_limit",
67 None,
68 "Optional limit of the zero copy allocator in allocations (timely dataflow).",
69 ParameterScope::Replica,
70);
71
72pub const ARRANGEMENT_EXERT_PROPORTIONALITY: Config<u32> = Config::new(
73 "arrangement_exert_proportionality",
74 16,
75 "Value that controls how much merge effort to exert on arrangements.",
76 ParameterScope::Replica,
77);
78
79pub const ENABLE_PAUSED_CLUSTER_READHOLD_DOWNGRADE: Config<bool> = Config::new(
80 "enable_paused_cluster_readhold_downgrade",
81 true,
82 "Aggressively downgrade input read holds for indexes on zero-replica clusters.",
83 ParameterScope::Environment,
84);
85
86pub fn all_dyncfgs(configs: ConfigSet) -> ConfigSet {
88 configs
89 .add(&CONTROLLER_PAST_GENERATION_REPLICA_CLEANUP_RETRY_INTERVAL)
90 .add(&ENABLE_0DT_DEPLOYMENT_SOURCES)
91 .add(&WALLCLOCK_LAG_RECORDING_INTERVAL)
92 .add(&WALLCLOCK_LAG_HISTOGRAM_PERIOD_INTERVAL)
93 .add(&ENABLE_TIMELY_ZERO_COPY)
94 .add(&ENABLE_TIMELY_ZERO_COPY_LGALLOC)
95 .add(&TIMELY_ZERO_COPY_LIMIT)
96 .add(&ARRANGEMENT_EXERT_PROPORTIONALITY)
97 .add(&ENABLE_PAUSED_CLUSTER_READHOLD_DOWNGRADE)
98}