mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Changed SQL variable delay_key_write to an enum
able delay_key_write as default (as it was in 4.0.2) Docs/manual.texi: Updated information about variable DELAY_KEY_WRITE. mysql-test/r/type_decimal.result: Updated results mysql-test/r/variables.result: Updated results mysql-test/t/type_decimal.test: Fixed test to not cause purify error in mathlib during purify. mysql-test/t/variables.test: Test new usage of DELAY_KEY_WRITE sql/ha_innodb.cc: Merge with 3.23 code sql/mysql_priv.h: Changed SQL variable delay_key_write to an enum sql/mysqld.cc: Changed SQL variable delay_key_write to an enum. Enable delay_key_write as default (as it was in 4.0.2) sql/set_var.cc: Changed SQL variable delay_key_write to an enum sql/set_var.h: Changed SQL variable delay_key_write to an enum sql/sql_class.h: Changed SQL variable delay_key_write to an enum sql/sql_yacc.yy: Changed SQL variable delay_key_write to an enum
This commit is contained in:
@ -28,7 +28,7 @@
|
||||
class sys_var;
|
||||
class set_var;
|
||||
typedef struct system_variables SV;
|
||||
extern TYPELIB bool_typelib;
|
||||
extern TYPELIB bool_typelib, delay_key_write_typelib;
|
||||
|
||||
enum enum_var_type
|
||||
{
|
||||
@ -140,6 +140,26 @@ public:
|
||||
};
|
||||
|
||||
|
||||
class sys_var_enum :public sys_var
|
||||
{
|
||||
uint *value;
|
||||
TYPELIB *enum_names;
|
||||
public:
|
||||
sys_var_enum(const char *name_arg, uint *value_arg,
|
||||
TYPELIB *typelib, sys_after_update_func func)
|
||||
:sys_var(name_arg,func), value(value_arg), enum_names(typelib)
|
||||
{}
|
||||
bool check(THD *thd, set_var *var)
|
||||
{
|
||||
return check_enum(thd, var, enum_names);
|
||||
}
|
||||
bool update(THD *thd, set_var *var);
|
||||
SHOW_TYPE type() { return SHOW_CHAR; }
|
||||
byte *value_ptr(THD *thd, enum_var_type type);
|
||||
bool check_update_type(Item_result type) { return 0; }
|
||||
};
|
||||
|
||||
|
||||
class sys_var_thd :public sys_var
|
||||
{
|
||||
public:
|
||||
@ -415,5 +435,6 @@ void set_var_init();
|
||||
void set_var_free();
|
||||
sys_var *find_sys_var(const char *str, uint length=0);
|
||||
bool sql_set_variables(THD *thd, List<set_var_base> *var_list);
|
||||
void fix_delay_key_write(THD *thd, enum_var_type type);
|
||||
|
||||
extern sys_var_str sys_charset;
|
||||
|
Reference in New Issue
Block a user