1 /* Copyright (C) 2008-2019 Kentoku Shiba
2    Copyright (C) 2019 MariaDB corp
3 
4   This program is free software); you can redistribute it and/or modify
5   it under the terms of the GNU General Public License as published by
6   the Free Software Foundation); version 2 of the License.
7 
8   This program is distributed in the hope that it will be useful,
9   but WITHOUT ANY WARRANTY); without even the implied warranty of
10   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11   GNU General Public License for more details.
12 
13   You should have received a copy of the GNU General Public License
14   along with this program); if not, write to the Free Software
15   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
16 
17 my_bool spider_param_support_xa();
18 my_bool spider_param_connect_mutex();
19 uint spider_param_connect_error_interval();
20 uint spider_param_table_init_error_interval();
21 int spider_param_use_table_charset(
22   int use_table_charset
23 );
24 uint spider_param_conn_recycle_mode(
25   THD *thd
26 );
27 uint spider_param_conn_recycle_strict(
28   THD *thd
29 );
30 bool spider_param_sync_trx_isolation(
31   THD *thd
32 );
33 bool spider_param_use_consistent_snapshot(
34   THD *thd
35 );
36 bool spider_param_internal_xa(
37   THD *thd
38 );
39 uint spider_param_internal_xa_snapshot(
40   THD *thd
41 );
42 uint spider_param_force_commit(
43   THD *thd
44 );
45 uint spider_param_xa_register_mode(
46   THD *thd
47 );
48 longlong spider_param_internal_offset(
49   THD *thd,
50   longlong internal_offset
51 );
52 longlong spider_param_internal_limit(
53   THD *thd,
54   longlong internal_limit
55 );
56 longlong spider_param_split_read(
57   THD *thd,
58   longlong split_read
59 );
60 double spider_param_semi_split_read(
61   THD *thd,
62   double semi_split_read
63 );
64 longlong spider_param_semi_split_read_limit(
65   THD *thd,
66   longlong semi_split_read_limit
67 );
68 int spider_param_init_sql_alloc_size(
69   THD *thd,
70   int init_sql_alloc_size
71 );
72 int spider_param_reset_sql_alloc(
73   THD *thd,
74   int reset_sql_alloc
75 );
76 #if defined(HS_HAS_SQLCOM) && defined(HAVE_HANDLERSOCKET)
77 longlong spider_param_hs_result_free_size(
78   THD *thd,
79   longlong hs_result_free_size
80 );
81 #endif
82 int spider_param_multi_split_read(
83   THD *thd,
84   int multi_split_read
85 );
86 int spider_param_max_order(
87   THD *thd,
88   int max_order
89 );
90 int spider_param_semi_trx_isolation(
91   THD *thd
92 );
93 int spider_param_semi_table_lock(
94   THD *thd,
95   int semi_table_lock
96 );
97 int spider_param_semi_table_lock_connection(
98   THD *thd,
99   int semi_table_lock_connection
100 );
101 uint spider_param_block_size(
102   THD *thd
103 );
104 int spider_param_selupd_lock_mode(
105   THD *thd,
106   int selupd_lock_mode
107 );
108 bool spider_param_sync_autocommit(
109   THD *thd
110 );
111 bool spider_param_use_default_database(
112   THD *thd
113 );
114 int spider_param_internal_sql_log_off(
115   THD *thd
116 );
117 int spider_param_bulk_size(
118   THD *thd,
119   int bulk_size
120 );
121 int spider_param_bulk_update_mode(
122   THD *thd,
123   int bulk_update_mode
124 );
125 int spider_param_bulk_update_size(
126   THD *thd,
127   int bulk_update_size
128 );
129 int spider_param_internal_optimize(
130   THD *thd,
131   int internal_optimize
132 );
133 int spider_param_internal_optimize_local(
134   THD *thd,
135   int internal_optimize_local
136 );
137 bool spider_param_use_flash_logs(
138   THD *thd
139 );
140 int spider_param_use_snapshot_with_flush_tables(
141   THD *thd
142 );
143 bool spider_param_use_all_conns_snapshot(
144   THD *thd
145 );
146 bool spider_param_lock_exchange(
147   THD *thd
148 );
149 bool spider_param_internal_unlock(
150   THD *thd
151 );
152 bool spider_param_semi_trx(
153   THD *thd
154 );
155 int spider_param_connect_timeout(
156   THD *thd,
157   int connect_timeout
158 );
159 int spider_param_net_read_timeout(
160   THD *thd,
161   int net_read_timeout
162 );
163 int spider_param_net_write_timeout(
164   THD *thd,
165   int net_write_timeout
166 );
167 int spider_param_quick_mode(
168   THD *thd,
169   int quick_mode
170 );
171 longlong spider_param_quick_page_size(
172   THD *thd,
173   longlong quick_page_size
174 );
175 longlong spider_param_quick_page_byte(
176   THD *thd,
177   longlong quick_page_byte
178 );
179 int spider_param_low_mem_read(
180   THD *thd,
181   int low_mem_read
182 );
183 int spider_param_select_column_mode(
184   THD *thd,
185   int select_column_mode
186 );
187 #ifndef WITHOUT_SPIDER_BG_SEARCH
188 int spider_param_bgs_mode(
189   THD *thd,
190   int bgs_mode
191 );
192 longlong spider_param_bgs_first_read(
193   THD *thd,
194   longlong bgs_first_read
195 );
196 longlong spider_param_bgs_second_read(
197   THD *thd,
198   longlong bgs_second_read
199 );
200 #endif
201 longlong spider_param_first_read(
202   THD *thd,
203   longlong first_read
204 );
205 longlong spider_param_second_read(
206   THD *thd,
207   longlong second_read
208 );
209 double spider_param_crd_interval(
210   THD *thd,
211   double crd_interval
212 );
213 int spider_param_crd_mode(
214   THD *thd,
215   int crd_mode
216 );
217 #ifdef WITH_PARTITION_STORAGE_ENGINE
218 int spider_param_crd_sync(
219   THD *thd,
220   int crd_sync
221 );
222 #endif
223 int spider_param_crd_type(
224   THD *thd,
225   int crd_type
226 );
227 double spider_param_crd_weight(
228   THD *thd,
229   double crd_weight
230 );
231 #ifndef WITHOUT_SPIDER_BG_SEARCH
232 int spider_param_crd_bg_mode(
233   THD *thd,
234   int crd_bg_mode
235 );
236 #endif
237 double spider_param_sts_interval(
238   THD *thd,
239   double sts_interval
240 );
241 int spider_param_sts_mode(
242   THD *thd,
243   int sts_mode
244 );
245 #ifdef WITH_PARTITION_STORAGE_ENGINE
246 int spider_param_sts_sync(
247   THD *thd,
248   int sts_sync
249 );
250 #endif
251 #ifndef WITHOUT_SPIDER_BG_SEARCH
252 int spider_param_sts_bg_mode(
253   THD *thd,
254   int sts_bg_mode
255 );
256 #endif
257 double spider_param_ping_interval_at_trx_start(
258   THD *thd
259 );
260 #if defined(HS_HAS_SQLCOM) && defined(HAVE_HANDLERSOCKET)
261 double spider_param_hs_ping_interval(
262   THD *thd
263 );
264 #endif
265 int spider_param_auto_increment_mode(
266   THD *thd,
267   int auto_increment_mode
268 );
269 bool spider_param_same_server_link(
270   THD *thd
271 );
272 bool spider_param_local_lock_table(
273   THD *thd
274 );
275 int spider_param_use_pushdown_udf(
276   THD *thd,
277   int use_pushdown_udf
278 );
279 int spider_param_direct_dup_insert(
280   THD *thd,
281   int direct_dup_insert
282 );
283 uint spider_param_udf_table_lock_mutex_count();
284 uint spider_param_udf_table_mon_mutex_count();
285 longlong spider_param_udf_ds_bulk_insert_rows(
286   THD *thd,
287   longlong udf_ds_bulk_insert_rows
288 );
289 int spider_param_udf_ds_table_loop_mode(
290   THD *thd,
291   int udf_ds_table_loop_mode
292 );
293 char *spider_param_remote_access_charset();
294 int spider_param_remote_autocommit();
295 char *spider_param_remote_time_zone();
296 int spider_param_remote_sql_log_off();
297 int spider_param_remote_trx_isolation();
298 char *spider_param_remote_default_database();
299 longlong spider_param_connect_retry_interval(
300   THD *thd
301 );
302 int spider_param_connect_retry_count(
303   THD *thd
304 );
305 char *spider_param_bka_engine(
306   THD *thd,
307   char *bka_engine
308 );
309 int spider_param_bka_mode(
310   THD *thd,
311   int bka_mode
312 );
313 int spider_param_udf_ct_bulk_insert_interval(
314   int udf_ct_bulk_insert_interval
315 );
316 longlong spider_param_udf_ct_bulk_insert_rows(
317   longlong udf_ct_bulk_insert_rows
318 );
319 #if defined(HS_HAS_SQLCOM) && defined(HAVE_HANDLERSOCKET)
320 uint spider_param_hs_r_conn_recycle_mode(
321   THD *thd
322 );
323 uint spider_param_hs_r_conn_recycle_strict(
324   THD *thd
325 );
326 uint spider_param_hs_w_conn_recycle_mode(
327   THD *thd
328 );
329 uint spider_param_hs_w_conn_recycle_strict(
330   THD *thd
331 );
332 int spider_param_use_hs_read(
333   THD *thd,
334   int use_hs_read
335 );
336 int spider_param_use_hs_write(
337   THD *thd,
338   int use_hs_write
339 );
340 #endif
341 int spider_param_use_handler(
342   THD *thd,
343   int use_handler
344 );
345 int spider_param_error_read_mode(
346   THD *thd,
347   int error_read_mode
348 );
349 int spider_param_error_write_mode(
350   THD *thd,
351   int error_write_mode
352 );
353 int spider_param_skip_default_condition(
354   THD *thd,
355   int skip_default_condition
356 );
357 int spider_param_skip_parallel_search(
358   THD *thd,
359   int skip_parallel_search
360 );
361 longlong spider_param_direct_order_limit(
362   THD *thd,
363   longlong direct_order_limit
364 );
365 int spider_param_read_only_mode(
366   THD *thd,
367   int read_only_mode
368 );
369 #ifdef HA_CAN_BULK_ACCESS
370 int spider_param_bulk_access_free(
371   int bulk_access_free
372 );
373 #endif
374 #if MYSQL_VERSION_ID < 50500
375 #else
376 int spider_param_udf_ds_use_real_table(
377   THD *thd,
378   int udf_ds_use_real_table
379 );
380 #endif
381 my_bool spider_param_general_log();
382 my_bool spider_param_index_hint_pushdown(
383   THD *thd
384 );
385 uint spider_param_max_connections();
386 uint spider_param_conn_wait_timeout();
387 uint spider_param_log_result_errors();
388 uint spider_param_log_result_error_with_sql();
389 uint spider_param_internal_xa_id_type(
390   THD *thd
391 );
392 int spider_param_casual_read(
393   THD *thd,
394   int casual_read
395 );
396 my_bool spider_param_dry_access();
397 int spider_param_delete_all_rows_type(
398   THD *thd,
399   int delete_all_rows_type
400 );
401 int spider_param_bka_table_name_type(
402   THD *thd,
403   int bka_table_name_type
404 );
405 int spider_param_use_cond_other_than_pk_for_update(
406   THD *thd
407 );
408 int spider_param_store_last_sts(
409   int store_last_sts
410 );
411 int spider_param_store_last_crd(
412   int store_last_crd
413 );
414 int spider_param_load_sts_at_startup(
415   int load_sts_at_startup
416 );
417 int spider_param_load_crd_at_startup(
418   int load_crd_at_startup
419 );
420 #ifndef WITHOUT_SPIDER_BG_SEARCH
421 uint spider_param_table_sts_thread_count();
422 uint spider_param_table_crd_thread_count();
423 #endif
424 int spider_param_slave_trx_isolation();
425 int spider_param_remote_wait_timeout(
426   THD *thd
427 );
428 int spider_param_wait_timeout(
429   THD *thd
430 );
431 bool spider_param_sync_sql_mode(
432   THD *thd
433 );
434