diff options
author | monty@mashka.mysql.fi <> | 2003-10-14 16:34:09 +0300 |
---|---|---|
committer | monty@mashka.mysql.fi <> | 2003-10-14 16:34:09 +0300 |
commit | e71b53a8fec86ee65c136a9447b56361cbf918fb (patch) | |
tree | fdb204f80367a263e33eecdadf745cf9da5f66e1 | |
parent | 461d1627b3323935345b13fe523f93dc74de9f36 (diff) | |
parent | 2d3840f55073f2b8504fe3f543270fb6b18fc1ea (diff) | |
download | mariadb-git-e71b53a8fec86ee65c136a9447b56361cbf918fb.tar.gz |
merge with 4.0 to get fix for SET enum_system_variable=NULL
-rw-r--r-- | .bzrignore | 1 | ||||
-rw-r--r-- | mysql-test/r/variables.result | 2 | ||||
-rw-r--r-- | mysql-test/t/variables.test | 2 | ||||
-rw-r--r-- | sql/set_var.cc | 11 |
4 files changed, 11 insertions, 5 deletions
diff --git a/.bzrignore b/.bzrignore index 3dc7f26cfbe..27f32040bc8 100644 --- a/.bzrignore +++ b/.bzrignore @@ -515,6 +515,7 @@ scripts/fill_func_tables.sql scripts/fill_help_tables scripts/fill_help_tables.sql scripts/make_binary_distribution +scripts/make_sharedlib_distribution scripts/make_win_src_distribution scripts/msql2mysql scripts/mysql_config diff --git a/mysql-test/r/variables.result b/mysql-test/r/variables.result index 30eb18dc7ed..3674d058bee 100644 --- a/mysql-test/r/variables.result +++ b/mysql-test/r/variables.result @@ -234,6 +234,8 @@ set myisam_max_sort_file_size=100; ERROR HY000: Variable 'myisam_max_sort_file_size' is a GLOBAL variable and should be set with SET GLOBAL set myisam_max_extra_sort_file_size=100; ERROR HY000: Variable 'myisam_max_extra_sort_file_size' is a GLOBAL variable and should be set with SET GLOBAL +set @@SQL_WARNINGS=NULL; +ERROR HY000: Variable 'sql_warnings' can't be set to the value of 'NULL' set autocommit=1; set big_tables=1; select @@autocommit, @@big_tables; diff --git a/mysql-test/t/variables.test b/mysql-test/t/variables.test index 7b5456e1895..396fb3ac722 100644 --- a/mysql-test/t/variables.test +++ b/mysql-test/t/variables.test @@ -150,6 +150,8 @@ select @@global.sql_auto_is_null; set myisam_max_sort_file_size=100; --error 1229 set myisam_max_extra_sort_file_size=100; +--error 1231 +set @@SQL_WARNINGS=NULL; # Test setting all variables diff --git a/sql/set_var.cc b/sql/set_var.cc index 8f1193263ee..1a2c5d6ac9e 100644 --- a/sql/set_var.cc +++ b/sql/set_var.cc @@ -464,9 +464,9 @@ sys_var *sys_variables[]= &sys_quote_show_create, &sys_rand_seed1, &sys_rand_seed2, + &sys_range_alloc_block_size, &sys_read_buff_size, &sys_read_rnd_buff_size, - &sys_range_alloc_block_size, #ifdef HAVE_REPLICATION &sys_relay_log_purge, #endif @@ -657,11 +657,11 @@ struct show_var_st init_vars[]= { {"secure_auth", (char*) &sys_secure_auth, SHOW_SYS}, #endif /* HAVE_QUERY_CACHE */ {sys_query_prealloc_size.name, (char*) &sys_query_prealloc_size, SHOW_SYS}, + {sys_range_alloc_block_size.name, (char*) &sys_range_alloc_block_size, + SHOW_SYS}, {sys_read_buff_size.name, (char*) &sys_read_buff_size, SHOW_SYS}, {sys_readonly.name, (char*) &sys_readonly, SHOW_SYS}, {sys_read_rnd_buff_size.name,(char*) &sys_read_rnd_buff_size, SHOW_SYS}, - {sys_range_alloc_block_size.name, (char*) &sys_range_alloc_block_size, - SHOW_SYS}, #ifdef HAVE_REPLICATION {sys_relay_log_purge.name, (char*) &sys_relay_log_purge, SHOW_SYS}, #endif @@ -1107,7 +1107,8 @@ byte *sys_var_thd_bool::value_ptr(THD *thd, enum_var_type type, bool sys_var::check_enum(THD *thd, set_var *var, TYPELIB *enum_names) { - char buff[80], *value; + char buff[80]; + const char *value; String str(buff, sizeof(buff), system_charset_info), *res; if (var->value->result_type() == STRING_RESULT) @@ -1117,7 +1118,7 @@ bool sys_var::check_enum(THD *thd, set_var *var, TYPELIB *enum_names) (ulong) find_type(res->c_ptr(), enum_names, 3)-1)) < 0) { - value=res->c_ptr(); + value= res ? res->c_ptr() : "NULL"; goto err; } } |