Skip to content

Commit 6a8ebbc

Browse files
committed
refactor(cubesql): Simplify default DatabaseVariables
1 parent 6ea1817 commit 6a8ebbc

File tree

4 files changed

+36
-242
lines changed

4 files changed

+36
-242
lines changed
Lines changed: 12 additions & 85 deletions
Original file line numberDiff line numberDiff line change
@@ -1,211 +1,138 @@
1-
use std::collections::HashMap;
2-
31
use crate::compile::{DatabaseVariable, DatabaseVariables};
42
use datafusion::scalar::ScalarValue;
53

64
pub fn defaults() -> DatabaseVariables {
7-
let mut variables: DatabaseVariables = HashMap::new();
8-
9-
variables.insert(
10-
"max_allowed_packet".to_string(),
5+
let variables = [
116
DatabaseVariable::system(
127
"max_allowed_packet".to_string(),
138
ScalarValue::UInt32(Some(67108864)),
149
None,
1510
),
16-
);
17-
variables.insert(
18-
"auto_increment_increment".to_string(),
1911
DatabaseVariable::system(
2012
"auto_increment_increment".to_string(),
2113
ScalarValue::UInt32(Some(1)),
2214
None,
2315
),
24-
);
25-
variables.insert(
26-
"version_comment".to_string(),
2716
DatabaseVariable::system(
2817
"version_comment".to_string(),
2918
ScalarValue::Utf8(Some("mysql".to_string())),
3019
None,
3120
),
32-
);
33-
variables.insert(
34-
"system_time_zone".to_string(),
3521
DatabaseVariable::system(
3622
"system_time_zone".to_string(),
3723
ScalarValue::Utf8(Some("UTC".to_string())),
3824
None,
3925
),
40-
);
41-
variables.insert(
42-
"time_zone".to_string(),
4326
DatabaseVariable::system(
4427
"time_zone".to_string(),
4528
ScalarValue::Utf8(Some("SYSTEM".to_string())),
4629
None,
4730
),
48-
);
49-
50-
variables.insert(
51-
"tx_isolation".to_string(),
5231
DatabaseVariable::system(
5332
"tx_isolation".to_string(),
5433
ScalarValue::Utf8(Some("REPEATABLE-READ".to_string())),
5534
None,
5635
),
57-
);
58-
variables.insert(
59-
"tx_read_only".to_string(),
6036
DatabaseVariable::system(
6137
"tx_read_only".to_string(),
6238
ScalarValue::Boolean(Some(false)),
6339
None,
6440
),
65-
);
66-
variables.insert(
67-
"transaction_isolation".to_string(),
6841
DatabaseVariable::system(
6942
"transaction_isolation".to_string(),
7043
ScalarValue::Utf8(Some("REPEATABLE-READ".to_string())),
7144
None,
7245
),
73-
);
74-
variables.insert(
75-
"transaction_read_only".to_string(),
7646
DatabaseVariable::system(
7747
"transaction_read_only".to_string(),
7848
ScalarValue::Boolean(Some(false)),
7949
None,
8050
),
81-
);
82-
variables.insert(
83-
"sessiontransaction_isolation".to_string(),
8451
DatabaseVariable::system(
8552
"sessiontransaction_isolation".to_string(),
8653
ScalarValue::Utf8(Some("REPEATABLE-READ".to_string())),
8754
None,
8855
),
89-
);
90-
variables.insert(
91-
"sessionauto_increment_increment".to_string(),
9256
DatabaseVariable::system(
9357
"sessionauto_increment_increment".to_string(),
9458
ScalarValue::Int64(Some(1)),
9559
None,
9660
),
97-
);
98-
variables.insert(
99-
"character_set_client".to_string(),
10061
DatabaseVariable::system(
10162
"character_set_client".to_string(),
10263
ScalarValue::Utf8(Some("utf8mb4".to_string())),
10364
None,
10465
),
105-
);
106-
variables.insert(
107-
"character_set_connection".to_string(),
10866
DatabaseVariable::system(
10967
"character_set_connection".to_string(),
11068
ScalarValue::Utf8(Some("utf8mb4".to_string())),
11169
None,
11270
),
113-
);
114-
variables.insert(
115-
"character_set_results".to_string(),
11671
DatabaseVariable::system(
11772
"character_set_results".to_string(),
11873
ScalarValue::Utf8(Some("utf8mb4".to_string())),
11974
None,
12075
),
121-
);
122-
variables.insert(
123-
"character_set_server".to_string(),
12476
DatabaseVariable::system(
12577
"character_set_server".to_string(),
12678
ScalarValue::Utf8(Some("utf8mb4".to_string())),
12779
None,
12880
),
129-
);
130-
variables.insert(
131-
"collation_connection".to_string(),
13281
DatabaseVariable::system(
13382
"collation_connection".to_string(),
13483
ScalarValue::Utf8(Some("utf8mb4_general_ci".to_string())),
13584
None,
13685
),
137-
);
138-
variables.insert(
139-
"collation_server".to_string(),
14086
DatabaseVariable::system(
14187
"collation_server".to_string(),
14288
ScalarValue::Utf8(Some("utf8mb4_0900_ai_ci".to_string())),
14389
None,
14490
),
145-
);
146-
variables.insert(
147-
"init_connect".to_string(),
14891
DatabaseVariable::system(
14992
"init_connect".to_string(),
15093
ScalarValue::Utf8(Some("".to_string())),
15194
None,
15295
),
153-
);
154-
variables.insert(
155-
"interactive_timeout".to_string(),
15696
DatabaseVariable::system(
15797
"interactive_timeout".to_string(),
15898
ScalarValue::Int32(Some(28800)),
15999
None,
160100
),
161-
);
162-
variables.insert(
163-
"license".to_string(),
164101
DatabaseVariable::system(
165102
"license".to_string(),
166103
ScalarValue::Utf8(Some("Apache 2".to_string())),
167104
None,
168105
),
169-
);
170-
variables.insert(
171-
"lower_case_table_names".to_string(),
172106
DatabaseVariable::system(
173107
"lower_case_table_names".to_string(),
174108
ScalarValue::Int32(Some(0)),
175109
None,
176110
),
177-
);
178-
variables.insert(
179-
"net_buffer_length".to_string(),
180111
DatabaseVariable::system(
181112
"net_buffer_length".to_string(),
182113
ScalarValue::Int32(Some(16384)),
183114
None,
184115
),
185-
);
186-
variables.insert(
187-
"net_write_timeout".to_string(),
188116
DatabaseVariable::system(
189117
"net_write_timeout".to_string(),
190118
ScalarValue::Int32(Some(600)),
191119
None,
192120
),
193-
);
194-
variables.insert(
195-
"wait_timeout".to_string(),
196121
DatabaseVariable::system(
197122
"wait_timeout".to_string(),
198123
ScalarValue::Int32(Some(28800)),
199124
None,
200125
),
201-
);
202-
variables.insert(
203-
"sql_mode".to_string(),
204-
DatabaseVariable::system(
205-
"sql_mode".to_string(),
206-
ScalarValue::Utf8(Some("ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION".to_string())),
207-
None,
208-
),
209-
);
126+
DatabaseVariable::system(
127+
"sql_mode".to_string(),
128+
ScalarValue::Utf8(Some("ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION".to_string())),
129+
None,
130+
),
131+
];
132+
133+
let variables = IntoIterator::into_iter(variables)
134+
.map(|v| (v.name.clone(), v))
135+
.collect::<DatabaseVariables>();
136+
210137
variables
211138
}

0 commit comments

Comments
 (0)