diff options
author | unknown <monty@mashka.mysql.fi> | 2002-12-05 16:38:49 +0200 |
---|---|---|
committer | unknown <monty@mashka.mysql.fi> | 2002-12-05 16:38:49 +0200 |
commit | fdb093fc476af146feaa6d4403db0c25bb6484d8 (patch) | |
tree | e7064c81623ddc900c1933e03b9ce1c1fe234ff6 /sql/set_var.cc | |
parent | 5fdd9f878f3b4690e3f6f0710e5930a81fcd368a (diff) | |
download | mariadb-git-fdb093fc476af146feaa6d4403db0c25bb6484d8.tar.gz |
Copy arguments given to mysql_server_init()
Made keybuff_size longlong (To make show variables work similar on 32
and 64 bit systems)
Fixed some 'not initalized variable errors' in multi-table-update.
Fixed memory leak in multi-table-update.
Now all tests works under valgrind without any errors.
libmysqld/lib_sql.cc:
Copy arguments given to mysql_server_init()
mysql-test/r/temp_table.result:
Update test results (after merge form 3.23)
sql/handler.cc:
Made keybuff_size longlong
sql/mysql_priv.h:
Made keybuff_size longlong
sql/mysqld.cc:
Made keybuff_size longlong
sql/set_var.cc:
Made keybuff_size longlong
sql/set_var.h:
Made keybuff_size longlong
sql/sql_select.cc:
Simple cleanup
sql/sql_select.h:
Make TMP_TABLE_PARAM to be allocated through Sql_alloc
sql/sql_update.cc:
Fixed some 'not initalized variable errors' in multi-table-update.
Fixed memory leak in multi-table-update
Diffstat (limited to 'sql/set_var.cc')
-rw-r--r-- | sql/set_var.cc | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/sql/set_var.cc b/sql/set_var.cc index 0675f7b4286..28222740c14 100644 --- a/sql/set_var.cc +++ b/sql/set_var.cc @@ -119,7 +119,7 @@ sys_var_thd_ulong sys_interactive_timeout("interactive_timeout", &SV::net_interactive_timeout); sys_var_thd_ulong sys_join_buffer_size("join_buffer_size", &SV::join_buff_size); -sys_var_long_ptr sys_key_buffer_size("key_buffer_size", +sys_var_ulonglong_ptr sys_key_buffer_size("key_buffer_size", &keybuff_size, fix_key_buffer_size); sys_var_bool_ptr sys_local_infile("local_infile", @@ -669,6 +669,23 @@ void sys_var_long_ptr::set_default(THD *thd, enum_var_type type) } +bool sys_var_ulonglong_ptr::update(THD *thd, set_var *var) +{ + ulonglong tmp= var->value->val_int(); + if (option_limits) + *value= (ulonglong) getopt_ull_limit_value(tmp, option_limits); + else + *value= (ulonglong) tmp; + return 0; +} + + +void sys_var_ulonglong_ptr::set_default(THD *thd, enum_var_type type) +{ + *value= (ulonglong) option_limits->def_value; +} + + bool sys_var_bool_ptr::update(THD *thd, set_var *var) { *value= (my_bool) var->save_result.ulong_value; |