diff options
author | unknown <knielsen@knielsen-hq.org> | 2013-04-05 16:20:58 +0200 |
---|---|---|
committer | unknown <knielsen@knielsen-hq.org> | 2013-04-05 16:20:58 +0200 |
commit | b7363eb4acd958bfac73ecad67367c44a6fa830d (patch) | |
tree | e50f993d71ad3bf174b14923927c0a572d8cc4d2 /sql/sys_vars.h | |
parent | c2cbc9cee6a3f8f745501ee2f5fcfd4586f53bbd (diff) | |
download | mariadb-git-b7363eb4acd958bfac73ecad67367c44a6fa830d.tar.gz |
MDEV-26: Global transaction ID.
Replace CHANGE MASTER TO ... master_gtid_pos='xxx' with a new system
variable @@global.gtid_pos.
This is more logical; @@gtid_pos is global, not per-master, and it is not
affected by RESET SLAVE.
Also rename master_gtid_pos=AUTO to master_use_gtid=1, which again is more
logical.
Diffstat (limited to 'sql/sys_vars.h')
-rw-r--r-- | sql/sys_vars.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/sql/sys_vars.h b/sql/sys_vars.h index 1729dcefd63..c1f994de860 100644 --- a/sql/sys_vars.h +++ b/sql/sys_vars.h @@ -2021,3 +2021,43 @@ public: } }; + +/** + Class for @@global.gtid_pos. +*/ +class Sys_var_gtid_pos: public sys_var +{ +public: + Sys_var_gtid_pos(const char *name_arg, + const char *comment, int flag_args, ptrdiff_t off, size_t size, + CMD_LINE getopt) + : sys_var(&all_sys_vars, name_arg, comment, flag_args, off, getopt.id, + getopt.arg_type, SHOW_CHAR, 0, NULL, VARIABLE_NOT_IN_BINLOG, + NULL, NULL, NULL) + { + option.var_type= GET_STR; + } + bool do_check(THD *thd, set_var *var); + bool session_update(THD *thd, set_var *var) + { + DBUG_ASSERT(false); + return true; + } + bool global_update(THD *thd, set_var *var); + bool check_update_type(Item_result type) { return type != STRING_RESULT; } + void session_save_default(THD *thd, set_var *var) + { + DBUG_ASSERT(false); + } + void global_save_default(THD *thd, set_var *var) + { + /* Record the attempt to use default so we can error. */ + var->value= 0; + } + uchar *session_value_ptr(THD *thd, LEX_STRING *base) + { + DBUG_ASSERT(false); + return NULL; + } + uchar *global_value_ptr(THD *thd, LEX_STRING *base); +}; |