MySQL  8.0.17
Source Code Documentation
Sys_var_dbug Class Reference

@session.dbug and @global.dbug variables. More...

#include <sys_vars.h>

Inheritance diagram for Sys_var_dbug:
sys_var

Public Member Functions

 Sys_var_dbug (const char *name_arg, const char *comment, int flag_args, CMD_LINE getopt, const char *def_val, PolyLock *lock=0, enum binlog_status_enum binlog_status_arg=VARIABLE_NOT_IN_BINLOG, on_check_function on_check_func=0, on_update_function on_update_func=0, const char *substitute=0, int parse_flag=PARSE_NORMAL)
 
bool do_check (THD *thd, set_var *var)
 
bool session_update (THD *, set_var *var)
 
bool global_update (THD *, set_var *var)
 
void session_save_default (THD *, set_var *)
 save the session default value of the variable in var More...
 
void global_save_default (THD *, set_var *var)
 save the global default value of the variable in var More...
 
void saved_value_to_string (THD *, set_var *var, char *def_val)
 This function converts value stored in save_result to string. More...
 
const ucharsession_value_ptr (THD *running_thd, THD *, LEX_STRING *)
 A pointer to a value of the variable for SHOW. More...
 
const ucharglobal_value_ptr (THD *thd, LEX_STRING *)
 
bool check_update_type (Item_result type)
 
- Public Member Functions inherited from sys_var
 sys_var (sys_var_chain *chain, const char *name_arg, const char *comment, int flag_args, ptrdiff_t off, int getopt_id, enum get_opt_arg_type getopt_arg_type, SHOW_TYPE show_val_type_arg, longlong def_val, PolyLock *lock, enum binlog_status_enum binlog_status_arg, on_check_function on_check_func, on_update_function on_update_func, const char *substitute, int parse_flag)
 sys_var constructor More...
 
virtual ~sys_var ()
 
virtual void cleanup ()
 All the cleanup procedures should be performed here. More...
 
virtual sys_var_pluginvarcast_pluginvar ()
 downcast for sys_var_pluginvar. More...
 
bool check (THD *thd, set_var *var)
 
const ucharvalue_ptr (THD *running_thd, THD *target_thd, enum_var_type type, LEX_STRING *base)
 
const ucharvalue_ptr (THD *thd, enum_var_type type, LEX_STRING *base)
 
virtual void update_default (longlong new_def_value)
 
longlong get_default ()
 
virtual bool is_default (THD *thd, set_var *var)
 
virtual longlong get_min_value ()
 
virtual ulonglong get_max_value ()
 
virtual ulong get_var_type ()
 Returns variable type. More...
 
virtual void set_arg_source (get_opt_arg_source *)
 
virtual void set_is_plugin (bool)
 
enum_variable_source get_source ()
 
const char * get_source_name ()
 
void set_source (enum_variable_source src)
 
bool set_source_name (const char *path)
 
bool set_user (const char *usr)
 
const char * get_user ()
 
const char * get_host ()
 
bool set_host (const char *hst)
 
ulonglong get_timestamp () const
 
void set_user_host (THD *thd)
 
my_optionget_option ()
 
void set_timestamp ()
 
void set_timestamp (ulonglong ts)
 
void clear_user_host_timestamp ()
 
virtual bool is_non_persistent ()
 
bool set_default (THD *thd, set_var *var)
 Update the system variable with the default value from either session or global scope. More...
 
bool update (THD *thd, set_var *var)
 
SHOW_TYPE show_type ()
 
int scope () const
 
const CHARSET_INFOcharset (THD *thd)
 
bool is_readonly () const
 
bool not_visible () const
 
bool is_trilevel () const
 
bool is_persist_readonly () const
 
bool is_hint_updateable () const
 Check if the variable can be set using SET_VAR hint. More...
 
bool is_struct ()
 the following is only true for keycache variables, that support the syntax @keycache_name.variable_name More...
 
bool is_written_to_binlog (enum_var_type type)
 
bool check_scope (enum_var_type query_type)
 Return true for success if: Global query and variable scope is GLOBAL or SESSION, or Session query and variable scope is SESSION or ONLY_SESSION. More...
 
bool is_global_persist (enum_var_type type)
 
bool is_settable_at_command_line ()
 Return true if settable at the command line. More...
 
bool register_option (std::vector< my_option > *array, int parse_flags)
 
void do_deprecated_warning (THD *thd)
 
Itemcopy_value (THD *thd)
 Create item from system variable value. More...
 
void save_default (THD *thd, set_var *var)
 

Additional Inherited Members

- Public Types inherited from sys_var
enum  flag_enum {
  GLOBAL = 0x0001, SESSION = 0x0002, ONLY_SESSION = 0x0004, SCOPE_MASK = 0x03FF,
  READONLY = 0x0400, ALLOCATED = 0x0800, INVISIBLE = 0x1000, TRI_LEVEL = 0x2000,
  NOTPERSIST = 0x4000, HINT_UPDATEABLE = 0x8000, PERSIST_AS_READ_ONLY = 0x10000
}
 
enum  binlog_status_enum { VARIABLE_NOT_IN_BINLOG, SESSION_VARIABLE_IN_BINLOG }
 Enumeration type to indicate for a system variable whether it will be written to the binlog or not. More...
 
- Public Attributes inherited from sys_var
sys_varnext
 
LEX_CSTRING name
 
enum sys_var::binlog_status_enum binlog_status
 
- Static Public Attributes inherited from sys_var
static const int PARSE_EARLY = 1
 
static const int PARSE_NORMAL = 2
 
- Protected Types inherited from sys_var
typedef bool(* on_check_function) (sys_var *self, THD *thd, set_var *var)
 
typedef bool(* on_update_function) (sys_var *self, THD *thd, enum_var_type type)
 
- Protected Member Functions inherited from sys_var
ucharsession_var_ptr (THD *thd)
 A pointer to a storage area of the variable, to the raw data. More...
 
ucharglobal_var_ptr ()
 
- Protected Attributes inherited from sys_var
int flags
 or'ed flag_enum values More...
 
int m_parse_flag
 either PARSE_EARLY or PARSE_NORMAL. More...
 
const SHOW_TYPE show_val_type
 what value_ptr() returns for sql_show.cc More...
 
my_option option
 min, max, default values are stored here More...
 
PolyLockguard
 second lock that protects the variable More...
 
ptrdiff_t offset
 offset to the value from global_system_variables More...
 
on_check_function on_check
 
on_update_function on_update
 
const char *const deprecation_substitute
 
bool is_os_charset
 true if the value is in character_set_filesystem More...
 
struct get_opt_arg_source source
 
char user [USERNAME_CHAR_LENGTH+1]
 
char host [HOSTNAME_LENGTH+1]
 
ulonglong timestamp
 

Detailed Description

@session.dbug and @global.dbug variables.

@dbug variable differs from other variables in one aspect: if its value is not assigned in the session, it "points" to the global value, and so when the global value is changed, the change immediately takes effect in the session.

This semantics is intentional, to be able to debug one session from another.

Constructor & Destructor Documentation

◆ Sys_var_dbug()

Sys_var_dbug::Sys_var_dbug ( const char *  name_arg,
const char *  comment,
int  flag_args,
CMD_LINE  getopt,
const char *  def_val,
PolyLock lock = 0,
enum binlog_status_enum  binlog_status_arg = VARIABLE_NOT_IN_BINLOG,
on_check_function  on_check_func = 0,
on_update_function  on_update_func = 0,
const char *  substitute = 0,
int  parse_flag = PARSE_NORMAL 
)
inline

Member Function Documentation

◆ check_update_type()

bool Sys_var_dbug::check_update_type ( Item_result  type)
inlinevirtual

Implements sys_var.

◆ do_check()

bool Sys_var_dbug::do_check ( THD thd,
set_var var 
)
inlinevirtual

Implements sys_var.

◆ global_save_default()

void Sys_var_dbug::global_save_default ( THD thd,
set_var var 
)
inlinevirtual

save the global default value of the variable in var

Implements sys_var.

◆ global_update()

bool Sys_var_dbug::global_update ( THD ,
set_var var 
)
inlinevirtual

Implements sys_var.

◆ global_value_ptr()

const uchar* Sys_var_dbug::global_value_ptr ( THD thd,
LEX_STRING  
)
inlinevirtual

Reimplemented from sys_var.

◆ saved_value_to_string()

void Sys_var_dbug::saved_value_to_string ( THD thd,
set_var var,
char *  def_val 
)
inlinevirtual

This function converts value stored in save_result to string.

This function must ba called after calling save_default() as save_default() will store default value to save_result.

Implements sys_var.

◆ session_save_default()

void Sys_var_dbug::session_save_default ( THD thd,
set_var var 
)
inlinevirtual

save the session default value of the variable in var

Implements sys_var.

◆ session_update()

bool Sys_var_dbug::session_update ( THD ,
set_var var 
)
inlinevirtual

Implements sys_var.

◆ session_value_ptr()

const uchar* Sys_var_dbug::session_value_ptr ( THD running_thd,
THD target_thd,
LEX_STRING base 
)
inlinevirtual

A pointer to a value of the variable for SHOW.

It must be of show_val_type type (bool for SHOW_BOOL, int for SHOW_INT, longlong for SHOW_LONGLONG, etc).

Reimplemented from sys_var.


The documentation for this class was generated from the following file: