|
| sys_var_pluginvar (sys_var_chain *chain, const char *name_arg, SYS_VAR *plugin_var_arg) |
|
sys_var_pluginvar * | cast_pluginvar () override |
| downcast for sys_var_pluginvar. More...
|
|
bool | check_update_type (Item_result type) override |
|
SHOW_TYPE | show_type () |
|
uchar * | real_value_ptr (THD *thd, enum_var_type type) |
|
TYPELIB * | plugin_var_typelib (void) |
|
uchar * | do_value_ptr (THD *running_thd, THD *target_thd, enum_var_type type, std::string_view keycache_name) |
|
uchar * | do_value_ptr (THD *thd, enum_var_type type, std::string_view keycache_name) |
|
const uchar * | session_value_ptr (THD *running_thd, THD *target_thd, std::string_view keycache_name) override |
| A pointer to a value of the variable for SHOW. More...
|
|
const uchar * | global_value_ptr (THD *thd, std::string_view keycache_name) override |
|
bool | do_check (THD *thd, set_var *var) override |
|
void | session_save_default (THD *, set_var *) override |
| save the session default value of the variable in var More...
|
|
void | saved_value_to_string (THD *thd, set_var *var, char *def_val) override |
| This function converts value stored in save_result to string. More...
|
|
void | global_save_default (THD *, set_var *) override |
| save the global default value of the variable in var More...
|
|
bool | session_update (THD *thd, set_var *var) override |
|
bool | global_update (THD *thd, set_var *var) override |
|
longlong | get_min_value () override |
|
ulonglong | get_max_value () override |
|
void | set_arg_source (get_opt_arg_source *src) override |
|
bool | is_non_persistent () override |
|
void | set_is_plugin (bool val) override |
|
| 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 *persisted_alias=nullptr, bool is_persisted_deprecated=false) |
| sys_var constructor More...
|
|
virtual | ~sys_var ()=default |
|
const char * | get_deprecation_substitute () |
|
virtual void | cleanup () |
| All the cleanup procedures should be performed here. More...
|
|
bool | check (THD *thd, set_var *var) |
|
const uchar * | value_ptr (THD *running_thd, THD *target_thd, enum_var_type type, std::string_view keycache_name) |
|
const uchar * | value_ptr (THD *thd, enum_var_type type, std::string_view keycache_name) |
|
virtual void | update_default (longlong new_def_value) |
|
virtual longlong | get_default () |
|
virtual ulong | get_var_type () |
| Returns variable type. More...
|
|
virtual enum_variable_source | get_source () |
|
virtual const char * | get_source_name () |
|
virtual void | set_source (enum_variable_source src) |
|
virtual bool | set_source_name (const char *path) |
|
virtual bool | set_user (const char *usr) |
|
virtual const char * | get_user () |
|
virtual const char * | get_host () |
|
virtual bool | set_host (const char *hst) |
|
virtual ulonglong | get_timestamp () const |
|
virtual void | set_user_host (THD *thd) |
|
my_option * | get_option () |
|
virtual void | set_timestamp () |
|
virtual void | set_timestamp (ulonglong ts) |
|
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_INFO * | charset (THD *thd) |
|
bool | is_readonly () const |
|
bool | not_visible () const |
|
bool | is_trilevel () const |
|
bool | is_persist_readonly () const |
|
bool | is_parse_early () const |
|
bool | is_sensitive () 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) |
|
Item * | copy_value (THD *thd) |
| Create item from system variable value. More...
|
|
void | save_default (THD *thd, set_var *var) |
|
bool | check_if_sensitive_in_context (THD *, bool suppress_errors=true) const |
|
|
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
, SENSITIVE = 0x20000
} |
|
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...
|
|
static const int | PARSE_EARLY = 1 |
|
static const int | PARSE_NORMAL = 2 |
|
typedef bool(* | on_check_function) (sys_var *self, THD *thd, set_var *var) |
|
typedef bool(* | pre_update_function) (sys_var *self, THD *thd, set_var *var) |
|
typedef bool(* | on_update_function) (sys_var *self, THD *thd, enum_var_type type) |
|
uchar * | session_var_ptr (THD *thd) |
| A pointer to a storage area of the variable, to the raw data. More...
|
|
uchar * | global_var_ptr () |
|
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...
|
|
PolyLock * | guard |
| second lock that protects the variable More...
|
|
ptrdiff_t | offset |
| offset to the value from global_system_variables More...
|
|
on_check_function | on_check |
|
pre_update_function | pre_update |
| Pointer to function to be invoked before updating system variable (but after calling on_check hook), while we do not hold any locks yet. More...
|
|
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 |
|
Enforce the NO DEFAULT policy for plugin system variables.
A plugin variable does not explicitly call the plugin supplied check function when setting the default value, e.g. SET <plugin_var> = DEFAULT.
But when the PLUGIN_VAR_NODEFAULT is set setting the default value is prohibited. This function gets called after the actual check done by sys_var_pluginvar::do_check() so it does not need to check again.
it only needs to enforce the PLUGIN_VAR_NODEFAULT flag.
There's no need for special error hence just returning true is enough.
- See also
- sys_var::on_check_function, sys_var::check, sys_var_pluginvar::do_check(), PLUGIN_VAR_NODEFAULT
- Parameters
-
self | the sys_var structure for the variable being set |
var | the data about the value being set |
- Returns
- is the setting valid
- Return values
-