mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
select @@smth=@@sys_str_var crash fixed
mysql-test/r/variables.result: new test mysql-test/t/ctype_utf8.test: typos fixed mysql-test/t/variables.test: new test sql/mysqld.cc: sys_str_var->value must be not NULL sql/set_var.cc: initialize sys_str_var->value from a constructor sql/set_var.h: initialize sys_str_var->value from a constructor
This commit is contained in:
@ -382,6 +382,8 @@ select 1;
|
|||||||
1
|
1
|
||||||
select @@session.key_buffer_size;
|
select @@session.key_buffer_size;
|
||||||
ERROR HY000: Variable 'key_buffer_size' is a GLOBAL variable
|
ERROR HY000: Variable 'key_buffer_size' is a GLOBAL variable
|
||||||
|
set ft_boolean_syntax = @@init_connect;
|
||||||
|
ERROR HY000: Variable 'ft_boolean_syntax' is a GLOBAL variable and should be set with SET GLOBAL
|
||||||
select @@global.max_user_connections,@@local.max_join_size;
|
select @@global.max_user_connections,@@local.max_join_size;
|
||||||
@@global.max_user_connections @@session.max_join_size
|
@@global.max_user_connections @@session.max_join_size
|
||||||
100 200
|
100 200
|
||||||
|
@ -54,7 +54,7 @@ select * from t1;
|
|||||||
drop table t1;
|
drop table t1;
|
||||||
|
|
||||||
#
|
#
|
||||||
# Bug #2366 Wrong utf8 behaviour when data is trancated
|
# Bug #2366 Wrong utf8 behaviour when data is truncated
|
||||||
#
|
#
|
||||||
set names koi8r;
|
set names koi8r;
|
||||||
create table t1 (s1 char(1) character set utf8);
|
create table t1 (s1 char(1) character set utf8);
|
||||||
@ -101,7 +101,7 @@ drop table t1;
|
|||||||
|
|
||||||
#
|
#
|
||||||
# Bug 2699
|
# Bug 2699
|
||||||
# UTF8 breaks primary keys for cols > 85 characters
|
# UTF8 breaks primary keys for cols > 333 characters
|
||||||
#
|
#
|
||||||
--error 1071
|
--error 1071
|
||||||
create table t1 (a text character set utf8, primary key(a(360)));
|
create table t1 (a text character set utf8, primary key(a(360)));
|
||||||
|
@ -270,6 +270,9 @@ select 1;
|
|||||||
--error 1238
|
--error 1238
|
||||||
select @@session.key_buffer_size;
|
select @@session.key_buffer_size;
|
||||||
|
|
||||||
|
--error 1229
|
||||||
|
set ft_boolean_syntax = @@init_connect;
|
||||||
|
|
||||||
#
|
#
|
||||||
# swap
|
# swap
|
||||||
#
|
#
|
||||||
|
@ -2189,10 +2189,14 @@ static int init_common_variables(const char *conf_file_name, int argc,
|
|||||||
sys_init_connect.value_length= 0;
|
sys_init_connect.value_length= 0;
|
||||||
if ((sys_init_connect.value= opt_init_connect))
|
if ((sys_init_connect.value= opt_init_connect))
|
||||||
sys_init_connect.value_length= strlen(opt_init_connect);
|
sys_init_connect.value_length= strlen(opt_init_connect);
|
||||||
|
else
|
||||||
|
sys_init_connect.value=my_strdup("",MYF(0));
|
||||||
|
|
||||||
sys_init_slave.value_length= 0;
|
sys_init_slave.value_length= 0;
|
||||||
if ((sys_init_slave.value= opt_init_slave))
|
if ((sys_init_slave.value= opt_init_slave))
|
||||||
sys_init_slave.value_length= strlen(opt_init_slave);
|
sys_init_slave.value_length= strlen(opt_init_slave);
|
||||||
|
else
|
||||||
|
sys_init_slave.value=my_strdup("",MYF(0));
|
||||||
|
|
||||||
if (use_temp_pool && bitmap_init(&temp_pool,0,1024,1))
|
if (use_temp_pool && bitmap_init(&temp_pool,0,1024,1))
|
||||||
return 1;
|
return 1;
|
||||||
|
@ -121,7 +121,8 @@ sys_var_character_set_server sys_character_set_server("character_set_server");
|
|||||||
sys_var_str sys_charset_system("character_set_system",
|
sys_var_str sys_charset_system("character_set_system",
|
||||||
sys_check_charset,
|
sys_check_charset,
|
||||||
sys_update_charset,
|
sys_update_charset,
|
||||||
sys_set_default_charset);
|
sys_set_default_charset,
|
||||||
|
(char *)my_charset_utf8_general_ci.name);
|
||||||
sys_var_character_set_database sys_character_set_database("character_set_database");
|
sys_var_character_set_database sys_character_set_database("character_set_database");
|
||||||
sys_var_character_set_client sys_character_set_client("character_set_client");
|
sys_var_character_set_client sys_character_set_client("character_set_client");
|
||||||
sys_var_character_set_connection sys_character_set_connection("character_set_connection");
|
sys_var_character_set_connection sys_character_set_connection("character_set_connection");
|
||||||
@ -150,13 +151,14 @@ sys_var_long_ptr sys_flush_time("flush_time", &flush_time);
|
|||||||
sys_var_str sys_ft_boolean_syntax("ft_boolean_syntax",
|
sys_var_str sys_ft_boolean_syntax("ft_boolean_syntax",
|
||||||
sys_check_ftb_syntax,
|
sys_check_ftb_syntax,
|
||||||
sys_update_ftb_syntax,
|
sys_update_ftb_syntax,
|
||||||
sys_default_ftb_syntax);
|
sys_default_ftb_syntax,
|
||||||
|
ft_boolean_syntax);
|
||||||
sys_var_str sys_init_connect("init_connect", 0,
|
sys_var_str sys_init_connect("init_connect", 0,
|
||||||
sys_update_init_connect,
|
sys_update_init_connect,
|
||||||
sys_default_init_connect);
|
sys_default_init_connect,0);
|
||||||
sys_var_str sys_init_slave("init_slave", 0,
|
sys_var_str sys_init_slave("init_slave", 0,
|
||||||
sys_update_init_slave,
|
sys_update_init_slave,
|
||||||
sys_default_init_slave);
|
sys_default_init_slave,0);
|
||||||
sys_var_thd_ulong sys_interactive_timeout("interactive_timeout",
|
sys_var_thd_ulong sys_interactive_timeout("interactive_timeout",
|
||||||
&SV::net_interactive_timeout);
|
&SV::net_interactive_timeout);
|
||||||
sys_var_thd_ulong sys_join_buffer_size("join_buffer_size",
|
sys_var_thd_ulong sys_join_buffer_size("join_buffer_size",
|
||||||
@ -667,11 +669,11 @@ struct show_var_st init_vars[]= {
|
|||||||
{sys_join_buffer_size.name, (char*) &sys_join_buffer_size, SHOW_SYS},
|
{sys_join_buffer_size.name, (char*) &sys_join_buffer_size, SHOW_SYS},
|
||||||
{sys_key_buffer_size.name, (char*) &sys_key_buffer_size, SHOW_SYS},
|
{sys_key_buffer_size.name, (char*) &sys_key_buffer_size, SHOW_SYS},
|
||||||
{sys_key_cache_age_threshold.name, (char*) &sys_key_cache_age_threshold,
|
{sys_key_cache_age_threshold.name, (char*) &sys_key_cache_age_threshold,
|
||||||
SHOW_SYS},
|
SHOW_SYS},
|
||||||
{sys_key_cache_block_size.name, (char*) &sys_key_cache_block_size,
|
{sys_key_cache_block_size.name, (char*) &sys_key_cache_block_size,
|
||||||
SHOW_SYS},
|
SHOW_SYS},
|
||||||
{sys_key_cache_division_limit.name, (char*) &sys_key_cache_division_limit,
|
{sys_key_cache_division_limit.name, (char*) &sys_key_cache_division_limit,
|
||||||
SHOW_SYS},
|
SHOW_SYS},
|
||||||
{"language", language, SHOW_CHAR},
|
{"language", language, SHOW_CHAR},
|
||||||
{"large_files_support", (char*) &opt_large_files, SHOW_BOOL},
|
{"large_files_support", (char*) &opt_large_files, SHOW_BOOL},
|
||||||
{sys_license.name, (char*) &sys_license, SHOW_SYS},
|
{sys_license.name, (char*) &sys_license, SHOW_SYS},
|
||||||
|
@ -139,8 +139,9 @@ public:
|
|||||||
sys_var_str(const char *name_arg,
|
sys_var_str(const char *name_arg,
|
||||||
sys_check_func check_func_arg,
|
sys_check_func check_func_arg,
|
||||||
sys_update_func update_func_arg,
|
sys_update_func update_func_arg,
|
||||||
sys_set_default_func set_default_func_arg)
|
sys_set_default_func set_default_func_arg,
|
||||||
:sys_var(name_arg), check_func(check_func_arg),
|
char *value_arg)
|
||||||
|
:sys_var(name_arg), check_func(check_func_arg), value(value_arg),
|
||||||
update_func(update_func_arg),set_default_func(set_default_func_arg)
|
update_func(update_func_arg),set_default_func(set_default_func_arg)
|
||||||
{}
|
{}
|
||||||
bool check(THD *thd, set_var *var);
|
bool check(THD *thd, set_var *var);
|
||||||
|
Reference in New Issue
Block a user