risingwave_common/config/
batch.rs1use super::*;
16
17#[derive(Clone, Debug, Serialize, Deserialize, DefaultFromSerde, ConfigDoc)]
19pub struct BatchConfig {
20 #[serde(default)]
23 pub worker_threads_num: Option<usize>,
24
25 #[serde(default, with = "batch_prefix")]
26 #[config_doc(omitted)]
27 pub developer: BatchDeveloperConfig,
28
29 #[serde(default)]
31 pub distributed_query_limit: Option<u64>,
32
33 #[serde(default)]
35 pub max_batch_queries_per_frontend_node: Option<u64>,
36
37 #[serde(default = "default::batch::enable_barrier_read")]
38 pub enable_barrier_read: bool,
39
40 #[serde(default = "default::batch::statement_timeout_in_sec")]
42 pub statement_timeout_in_sec: u32,
43
44 #[serde(default, flatten)]
45 #[config_doc(omitted)]
46 pub unrecognized: Unrecognized<Self>,
47
48 #[serde(default)]
49 pub frontend_compute_runtime_worker_threads: Option<usize>,
51
52 #[serde(default = "default::batch::mask_worker_temporary_secs")]
54 pub mask_worker_temporary_secs: usize,
55
56 #[serde(default = "default::batch::redact_sql_option_keywords")]
59 pub redact_sql_option_keywords: Vec<String>,
60
61 #[serde(default = "default::batch::enable_spill")]
63 pub enable_spill: bool,
64}
65
66serde_with::with_prefix!(batch_prefix "batch_");
67
68#[derive(Clone, Debug, Serialize, Deserialize, DefaultFromSerde, ConfigDoc)]
72pub struct BatchDeveloperConfig {
73 #[serde(default = "default::developer::connector_message_buffer_size")]
76 pub connector_message_buffer_size: usize,
77
78 #[serde(default = "default::developer::batch_output_channel_size")]
80 pub output_channel_size: usize,
81
82 #[serde(default = "default::developer::batch_receiver_channel_size")]
83 pub receiver_channel_size: usize,
84
85 #[serde(default = "default::developer::batch_root_stage_channel_size")]
86 pub root_stage_channel_size: usize,
87
88 #[serde(default = "default::developer::batch_chunk_size")]
90 pub chunk_size: usize,
91
92 #[serde(default = "default::developer::batch_exchange_connection_pool_size")]
95 pub(super) exchange_connection_pool_size: Option<u16>,
96
97 #[serde(default)]
98 pub compute_client_config: RpcClientConfig,
99
100 #[serde(default)]
101 pub frontend_client_config: RpcClientConfig,
102
103 #[serde(default = "default::developer::batch_local_execute_buffer_size")]
104 pub local_execute_buffer_size: usize,
105}
106
107pub mod default {
108 pub use crate::config::default::developer;
109
110 pub mod batch {
111 pub fn enable_barrier_read() -> bool {
112 false
113 }
114
115 pub fn enable_spill() -> bool {
116 true
117 }
118
119 pub fn statement_timeout_in_sec() -> u32 {
120 60 * 60
122 }
123
124 pub fn mask_worker_temporary_secs() -> usize {
125 30
126 }
127
128 pub fn redact_sql_option_keywords() -> Vec<String> {
129 [
130 "credential",
131 "key",
132 "password",
133 "private",
134 "secret",
135 "token",
136 ]
137 .into_iter()
138 .map(str::to_string)
139 .collect()
140 }
141 }
142}