144
144
&SV::binlog_format);
145
145
static sys_var_thd_ulong sys_bulk_insert_buff_size(&vars, "bulk_insert_buffer_size",
146
146
&SV::bulk_insert_buff_size);
147
static sys_var_character_set_sv
148
sys_character_set_server(&vars, "character_set_server",
149
&SV::collation_server, &default_charset_info, 0,
150
sys_var::SESSION_VARIABLE_IN_BINLOG);
151
sys_var_const_str sys_charset_system(&vars, "character_set_system",
152
(char *)my_charset_utf8_general_ci.name);
153
static sys_var_character_set_database
154
sys_character_set_database(&vars, "character_set_database",
155
sys_var::SESSION_VARIABLE_IN_BINLOG);
156
static sys_var_character_set_client
157
sys_character_set_client(&vars, "character_set_client",
158
&SV::character_set_client,
159
&default_charset_info,
160
sys_var::SESSION_VARIABLE_IN_BINLOG);
161
static sys_var_character_set_sv
162
sys_character_set_connection(&vars, "character_set_connection",
163
&SV::collation_connection,
164
&default_charset_info, 0,
165
sys_var::SESSION_VARIABLE_IN_BINLOG);
166
static sys_var_character_set_sv sys_character_set_results(&vars, "character_set_results",
167
&SV::character_set_results,
168
&default_charset_info, true);
169
static sys_var_character_set_sv sys_character_set_filesystem(&vars, "character_set_filesystem",
170
&SV::character_set_filesystem,
171
&character_set_filesystem);
172
147
static sys_var_thd_ulong sys_completion_type(&vars, "completion_type",
173
148
&SV::completion_type,
174
149
check_completion_type,
315
290
&SV::read_rnd_buff_size);
316
291
static sys_var_thd_ulong sys_div_precincrement(&vars, "div_precision_increment",
317
292
&SV::div_precincrement);
318
static sys_var_long_ptr sys_rpl_recovery_rank(&vars, "rpl_recovery_rank",
321
294
static sys_var_thd_ulong sys_range_alloc_block_size(&vars, "range_alloc_block_size",
322
295
&SV::range_alloc_block_size);
334
307
&SV::trans_prealloc_size,
335
308
0, fix_trans_mem_root);
337
static sys_var_bool_ptr sys_secure_auth(&vars, "secure_auth", &opt_secure_auth);
338
310
static sys_var_const_str_ptr sys_secure_file_priv(&vars, "secure_file_priv",
339
311
&opt_secure_file_priv);
340
312
static sys_var_long_ptr sys_server_id(&vars, "server_id", &server_id, fix_server_id);
1734
void sys_var_character_set_sv::set_default(THD *thd, enum_var_type type)
1736
if (type == OPT_GLOBAL)
1737
global_system_variables.*offset= *global_default;
1740
thd->variables.*offset= global_system_variables.*offset;
1741
thd->update_charset();
1744
const CHARSET_INFO **sys_var_character_set_sv::ci_ptr(THD *thd, enum_var_type type)
1746
if (type == OPT_GLOBAL)
1747
return &(global_system_variables.*offset);
1749
return &(thd->variables.*offset);
1753
bool sys_var_character_set_client::check(THD *thd, set_var *var)
1755
if (sys_var_character_set_sv::check(thd, var))
1757
/* Currently, UCS-2 cannot be used as a client character set */
1758
if (var->save_result.charset->mbminlen > 1)
1760
my_error(ER_WRONG_VALUE_FOR_VAR, MYF(0), name,
1761
var->save_result.charset->csname);
1768
const CHARSET_INFO ** sys_var_character_set_database::ci_ptr(THD *thd,
1771
if (type == OPT_GLOBAL)
1772
return &global_system_variables.collation_database;
1774
return &thd->variables.collation_database;
1778
void sys_var_character_set_database::set_default(THD *thd, enum_var_type type)
1780
if (type == OPT_GLOBAL)
1781
global_system_variables.collation_database= default_charset_info;
1784
thd->variables.collation_database= thd->db_charset;
1785
thd->update_charset();
1790
1706
bool sys_var_collation_sv::update(THD *thd, set_var *var)
1792
1708
if (var->type == OPT_GLOBAL)