26#ifndef MRS_COMPONENT_SYSTEM_VARS_H
27#define MRS_COMPONENT_SYSTEM_VARS_H
41 const char *
name =
nullptr;
42 const char *
desc =
nullptr;
106 const void *checked);
108 const void *checked);
110 const void *checked);
112 const void *checked);
115 const void *checked);
118 const void *checked);
#define MYSQL_THD
Definition: backup_page_tracker.h:38
Owns and manages system variables exposed by the MRS component.
Definition: mrs_component_system_vars.h:68
static void update_ulong_var(MYSQL_THD, SYS_VAR *, void *val_ptr, const void *checked)
Definition: mrs_component_system_vars.cc:482
static int check_http_port(MYSQL_THD, SYS_VAR *, void *new_value, struct st_mysql_value *value)
Check for a valid http port value.
Definition: mrs_component_system_vars.cc:390
sv_char m_ssl_cert_sysvar
Definition: mrs_component_system_vars.h:124
static void update_string_var(MYSQL_THD, SYS_VAR *, void *val_ptr, const void *checked)
Update a string system variable.
Definition: mrs_component_system_vars.cc:506
ConfiguredValues get_configured_values() const
Definition: mrs_component_system_vars.cc:286
static int check_io_worker_threads(MYSQL_THD, SYS_VAR *, void *new_value, struct st_mysql_value *value)
Definition: mrs_component_system_vars.cc:413
static void update_http_max_response_body_size(MYSQL_THD, SYS_VAR *, void *val_ptr, const void *checked)
Definition: mrs_component_system_vars.cc:538
std::mutex m_values_mutex
Definition: mrs_component_system_vars.h:122
static void update_http_max_connections(MYSQL_THD, SYS_VAR *, void *val_ptr, const void *checked)
Definition: mrs_component_system_vars.cc:515
int unregister_all()
Unregister the MySQL Rest Service Component system variables.
Definition: mrs_component_system_vars.cc:272
static int check_str_var(MYSQL_THD, SYS_VAR *var, void *new_value, struct st_mysql_value *value)
Definition: mrs_component_system_vars.cc:365
static int check_http_body_size(MYSQL_THD, SYS_VAR *, void *new_value, struct st_mysql_value *value)
Definition: mrs_component_system_vars.cc:460
static void update_ullong_var(MYSQL_THD, SYS_VAR *, void *val_ptr, const void *checked)
Update an unsigned long long system variable.
Definition: mrs_component_system_vars.cc:494
sv_char m_ssl_cipher_sysvar
Definition: mrs_component_system_vars.h:126
sv_ulonglong m_http_max_response_body_size_sysvar
Definition: mrs_component_system_vars.h:130
int register_system_var(SysvarBase &sysvar, void *args) const
Register one system variable.
Definition: mrs_component_system_vars.cc:322
int register_all()
Register the MySQL Rest Service Component system variables with the server and set the current values...
Definition: mrs_component_system_vars.cc:185
sv_ulong m_io_worker_threads_sysvar
Definition: mrs_component_system_vars.h:127
const char * m_sysvar_prefix
Definition: mrs_component_system_vars.h:120
sv_ulonglong m_http_port_sysvar
Definition: mrs_component_system_vars.h:123
int unregister_system_var(SysvarBase &sysvar) const
Unregister one system variable.
Definition: mrs_component_system_vars.cc:341
static void update_http_max_request_body_size(MYSQL_THD, SYS_VAR *, void *val_ptr, const void *checked)
Definition: mrs_component_system_vars.cc:526
SystemVars(const SystemVars &)=delete
void apply_http_limits()
Definition: mrs_component_system_vars.cc:303
SystemVars & operator=(SystemVars &&)=delete
sv_ulonglong m_http_max_request_body_size_sysvar
Definition: mrs_component_system_vars.h:129
static int check_http_max_connections(MYSQL_THD, SYS_VAR *, void *new_value, struct st_mysql_value *value)
Definition: mrs_component_system_vars.cc:436
sv_ulong m_http_max_connections_sysvar
Definition: mrs_component_system_vars.h:128
SystemVars & operator=(const SystemVars &)=delete
sv_char m_ssl_key_sysvar
Definition: mrs_component_system_vars.h:125
SystemVars(SystemVars &&)=delete
int initialize_all()
Initialize the MySQL Rest Service Component system variables.
Definition: mrs_component_system_vars.cc:92
int(* mysql_sys_var_check_func)(MYSQL_THD thd, SYS_VAR *var, void *save, struct st_mysql_value *value)
Signature for the check function.
Definition: component_sys_var_service.h:78
void(* mysql_sys_var_update_func)(MYSQL_THD thd, SYS_VAR *var, void *val_ptr, const void *save)
Signature for the update function.
Definition: component_sys_var_service.h:106
#define T
Definition: jit_executor_value.cc:373
ValueType value(const std::optional< ValueType > &v)
Definition: gtid.h:83
Definition: mrs_component.cc:137
Definition: system_variables_bits.h:153
Definition: mrs_component_system_vars.h:38
int type
Definition: mrs_component_system_vars.h:43
bool registered
Definition: mrs_component_system_vars.h:45
mysql_sys_var_check_func check_func
Definition: mrs_component_system_vars.h:47
const char * name
Definition: mrs_component_system_vars.h:41
void * val_ptr
Definition: mrs_component_system_vars.h:44
mysql_sys_var_update_func update_func
Definition: mrs_component_system_vars.h:48
const char * desc
Definition: mrs_component_system_vars.h:42
Definition: mrs_component_system_vars.h:52
T def
Definition: mrs_component_system_vars.h:57
T min
Definition: mrs_component_system_vars.h:55
T max
Definition: mrs_component_system_vars.h:56
Sysvar()
Definition: mrs_component_system_vars.h:53
T val
Definition: mrs_component_system_vars.h:54
Definition: system_variables_bits.h:96