MySQL 8.3.0
Source Code Documentation
mysqld.h
Go to the documentation of this file.
1/* Copyright (c) 2010, 2023, Oracle and/or its affiliates.
2
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License, version 2.0,
5 as published by the Free Software Foundation.
6
7 This program is also distributed with certain software (including
8 but not limited to OpenSSL) that is licensed under separate terms,
9 as designated in a particular file or component or in included license
10 documentation. The authors of MySQL hereby grant you an additional
11 permission to link the program and your derivative works with the
12 separately licensed software that they have included with MySQL.
13
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License, version 2.0, for more details.
18
19 You should have received a copy of the GNU General Public License
20 along with this program; if not, write to the Free Software
21 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */
22
23#ifndef MYSQLD_INCLUDED
24#define MYSQLD_INCLUDED
25
26#include "my_config.h"
27
28#include <signal.h>
29#include <stdint.h> // int32_t
30#include <sys/types.h>
31#include <time.h>
32#include <atomic>
33#include <string>
34#include <vector>
35
38#include "lex_string.h"
39#include "my_command.h"
40#include "my_compress.h"
41#include "my_getopt.h"
42#include "my_hostname.h" // HOSTNAME_LENGTH
43#include "my_inttypes.h"
44#include "my_io.h"
45#include "my_psi_config.h"
46#include "my_sharedlib.h"
47#include "my_sqlcommand.h" // SQLCOM_END
48#include "my_sys.h" // MY_TMPDIR
49#include "my_thread.h" // my_thread_attr_t
61#include "mysql/status_var.h"
63#include "mysql_com.h" // SERVER_VERSION_LENGTH
64#ifdef _WIN32
65#include "sql/nt_servc.h"
66#endif // _WIN32
67#include "aggregated_stats.h"
68#include "sql/sql_bitmap.h"
69#include "sql/sql_const.h" // UUID_LENGTH
70
74class THD;
75class Time_zone;
76struct MEM_ROOT;
77struct handlerton;
78
79#if MAX_INDEXES <= 64
80typedef Bitmap<64> Key_map; /* Used for finding keys */
81#elif MAX_INDEXES > 255
82#error "MAX_INDEXES values greater than 255 is not supported."
83#else
84typedef Bitmap<((MAX_INDEXES + 7) / 8 * 8)> Key_map; /* Used for finding keys */
85#endif
86
87/* Bits from testflag */
88#define TEST_PRINT_CACHED_TABLES 1
89#define TEST_NO_KEY_GROUP 2
90#define TEST_MIT_THREAD 4
91/*
92 TEST_BLOCKING is made obsolete and is not used any
93 where in the code base and is retained here so that
94 the other bit flag values are not changed.
95*/
96#define OBSOLETE_TEST_BLOCKING 8
97#define TEST_KEEP_TMP_TABLES 16
98#define TEST_READCHECK 64 /**< Force use of readcheck */
99#define TEST_NO_EXTRA 128
100#define TEST_CORE_ON_SIGNAL 256 /**< Give core if signal */
101#define TEST_NO_STACKTRACE 512
102#define TEST_SIGINT 1024 /**< Allow sigint on threads */
103#define TEST_SYNCHRONIZATION \
104 2048 /**< get server to do sleep in \
105 some places */
106#define TEST_DO_QUICK_LEAK_CHECK \
107 4096 /**< Do Valgrind leak check for \
108 each command. */
109#define TEST_NO_TEMP_TABLES \
110 8192 /**< No temp table engine is loaded, so use dummy costs. */
111
112#define SPECIAL_NO_NEW_FUNC 2 /* Skip new functions */
113#define SPECIAL_SKIP_SHOW_DB 4 /* Don't allow 'show db' */
114#define SPECIAL_NO_RESOLVE 64 /* Don't use gethostname */
115#define SPECIAL_SHORT_LOG_FORMAT 1024
116
118
119/* Function prototypes */
120
121/**
122 Signal the server thread for restart.
123
124 @return false if the thread has been successfully signalled for restart
125 else true.
126*/
127
129void kill_mysql(void);
130void refresh_status();
132bool is_secure_file_path(const char *path);
133ulong sql_rnd_with_mutex();
134
135struct System_status_var *get_thd_status_var(THD *thd, bool *aggregated);
136
137#ifndef NDEBUG
138void thd_mem_cnt_alloc(THD *thd, size_t size, const char *key_name);
139#else
140void thd_mem_cnt_alloc(THD *thd, size_t size);
141#endif
142
143void thd_mem_cnt_free(THD *thd, size_t size);
144
145// These are needed for unit testing.
146void set_remaining_args(int argc, char **argv);
148void my_init_signals();
149bool gtid_server_init();
152
154 SERVER_BOOTING, /* Server is not operational. It is starting */
155 SERVER_OPERATING, /* Server is fully initialized and operating */
156 SERVER_SHUTTING_DOWN /* Server is shutting down */
159
161extern bool opt_bin_log;
162extern bool opt_log_replica_updates;
163extern bool opt_log_unsafe_statements;
168extern bool opt_log_slow_extra;
170extern bool opt_skip_name_resolve;
171extern bool opt_help;
172extern bool opt_verbose;
173extern MYSQL_PLUGIN_IMPORT std::atomic<int32>
175extern bool opt_no_dd_upgrade;
176extern long opt_upgrade_mode;
177extern bool opt_initialize;
178extern bool opt_safe_user_create;
181extern ulong replica_exec_mode_options;
185extern int32_t opt_regexp_time_limit;
186extern int32_t opt_regexp_stack_limit;
187#ifdef _WIN32
188extern bool opt_no_monitor;
189#endif // _WIN32
190extern bool opt_debugging;
191extern bool opt_validate_config;
192
200
203extern bool lower_case_file_system;
204
206
208
209#ifndef NDEBUG
211#endif
212extern ulong mts_parallel_option;
213#ifdef _WIN32
214extern bool opt_enable_named_pipe;
215extern char *named_pipe_full_access_group;
216extern bool opt_enable_shared_memory;
217extern mysql_rwlock_t LOCK_named_pipe_full_access_group;
218#endif
219extern bool opt_allow_suspicious_udfs;
220extern const char *opt_secure_file_priv;
223extern bool trust_function_creators;
226#ifdef _WIN32
227extern const char *shared_memory_base_name;
228#endif
229extern const char *mysqld_unix_port;
230extern char *default_tz_name;
231extern Time_zone *default_tz;
232extern const char *default_storage_engine;
233extern const char *default_tmp_storage_engine;
236extern bool temptable_use_mmap;
237extern bool using_udf_functions;
238extern bool locked_in_memory;
239extern bool opt_using_transactions;
240extern ulong current_pid;
241extern ulong binlog_expire_logs_seconds;
246extern ulong tc_log_page_waits;
247extern bool relay_log_purge;
248extern bool relay_log_recovery;
249extern std::atomic<bool> offline_mode;
252
258extern ulong delay_key_write_options;
259
260extern ulong opt_log_timestamps;
261extern const char *timestamp_type_names[];
265extern char *default_auth_plugin;
266extern uint default_password_lifetime;
267extern bool password_require_current;
268/*
269 @warning : The real value is in @ref partial_revokes. The @ref
270 opt_partial_revokes is just a tool to trick the Sys_var class into
271 operating on an atomic variable.
272
273 Thus : do not use or access @ref opt_partial_revokes in your code.
274 If you need the value of the flag please use the @ref partial_revokes
275 global.
276 @todo :
277 @ref opt_partial_revokes to be removed when the Sys_var classes can operate
278 safely on an atomic.
279 */
280extern bool opt_partial_revokes;
281extern char *my_bind_addr_str;
282extern char *my_admin_bind_addr_str;
283extern uint mysqld_admin_port;
285extern char glob_hostname[HOSTNAME_LENGTH + 1];
287extern char *opt_init_file;
288extern const char *opt_tc_log_file;
289extern char server_uuid[UUID_LENGTH + 1];
290extern const char *server_uuid_ptr;
291#if defined(HAVE_BUILD_ID_SUPPORT)
292extern char server_build_id[42];
293extern const char *server_build_id_ptr;
294#endif
295extern const double log_10[309];
298extern ulong aborted_threads;
299extern ulong delayed_insert_timeout;
301extern std::atomic<int32> atomic_replica_open_temp_tables;
302extern ulong slow_launch_time;
303extern ulong table_cache_size;
304extern ulong schema_def_size;
305extern ulong stored_program_def_size;
306extern ulong table_def_size;
307extern ulong tablespace_def_size;
309extern ulong max_digest_length;
312extern ulong slave_trans_retries;
313extern uint replica_net_timeout;
316extern ulong rpl_stop_replica_timeout;
319extern ulong open_files_limit;
320extern bool clone_startup;
321extern bool clone_recovery_error;
328extern ulong replica_max_allowed_packet;
329extern ulong binlog_row_event_max_size;
330extern ulong binlog_checksum_options;
331extern ulong binlog_row_metadata;
332extern const char *binlog_checksum_type_names[];
337extern ulong binlog_error_action;
340 /// Ignore the error and let server continue without binlogging
342 /// Abort the server
343 ABORT_SERVER = 1
345extern const char *binlog_error_action_list[];
346extern char *opt_authentication_policy;
347extern std::vector<std::string> authentication_policy_list;
348
349extern ulong stored_program_cache_size;
350extern ulong back_log;
352extern time_t server_start_time;
353extern char *opt_mysql_tmpdir;
356extern const char *show_comp_option_name[];
357extern const char *first_keyword, *binary_keyword;
358extern MYSQL_PLUGIN_IMPORT const char *my_localhost;
359extern const char *in_left_expr_name;
360extern SHOW_VAR status_vars[];
364extern struct rand_struct sql_rand;
365extern handlerton *myisam_hton;
366extern handlerton *heap_hton;
368extern handlerton *innodb_hton;
369extern uint opt_server_id_bits;
370extern ulong opt_server_id_mask;
371extern const char *load_default_groups[];
372extern struct my_option my_long_early_options[];
376extern bool server_shutting_down;
378extern bool old_mode;
379extern bool avoid_temporal_upgrade;
381extern ulong connection_errors_internal;
382extern ulong connection_errors_peer_addr;
384extern char *opt_log_error_services;
386/** The size of the host_cache. */
387extern uint host_cache_size;
388extern ulong log_error_verbosity;
389
390extern bool persisted_globals_load;
391extern bool opt_keyring_operations;
393extern char *opt_keyring_migration_user;
394extern char *opt_keyring_migration_host;
399extern ulong opt_keyring_migration_port;
400
403/**
404 Variable to check if connection related options are set
405 as part of keyring migration.
406*/
407extern bool migrate_connect_options;
408
410
411extern thread_local MEM_ROOT **THR_MALLOC;
412
415
416#ifdef HAVE_PSI_INTERFACE
417
459
462
471
503
528
532
533#endif /* HAVE_PSI_INTERFACE */
534
535/*
536 MAINTAINER: Please keep this list in order, to limit merge collisions.
537 Hint: grep PSI_stage_info | sort -u
538*/
561extern PSI_stage_info
589extern PSI_stage_info
592extern PSI_stage_info
596extern PSI_stage_info
598extern PSI_stage_info
600extern PSI_stage_info
642#ifdef HAVE_PSI_STATEMENT_INTERFACE
643/**
644 Statement instrumentation keys (sql).
645 The last entry, at [SQLCOM_END], is for parsing errors.
646*/
648
649/**
650 Statement instrumentation keys (com).
651 The last entry, at [COM_END], is for packet errors.
652*/
654
655/**
656 Statement instrumentation key for replication.
657*/
659#endif /* HAVE_PSI_STATEMENT_INTERFACE */
660
661extern struct st_VioSSLFd *ssl_acceptor_fd;
662
663extern bool opt_large_pages;
664extern uint opt_large_page_size;
665extern char lc_messages_dir[FN_REFLEN];
666extern char *lc_messages_dir_ptr;
667extern const char *log_error_dest;
671
672extern long tc_heuristic_recover;
673
674extern ulong specialflag;
675extern size_t mysql_data_home_len;
676extern const char *mysql_real_data_home_ptr;
683extern bool log_bin_supplied;
686
687#define mysql_tmpdir (my_tmpdir(&mysql_tmpdir_list))
688
689/*
690 Server mutex locks and condition variables.
691 */
720
724
729
730extern ulong opt_ssl_fips_mode;
731
733
734extern sigset_t mysqld_signal_mask;
735/* query_id */
737extern std::atomic<query_id_t> atomic_global_query_id;
738
739int *get_remaining_argc();
740char ***get_remaining_argv();
741
742/* increment query_id and return it. */
743[[nodiscard]] inline query_id_t next_query_id() {
744 return ++atomic_global_query_id;
745}
746
747#define ER(X) please_use_ER_THD_or_ER_DEFAULT_instead(X)
748
749/* Accessor function for _connection_events_loop_aborted flag */
750[[nodiscard]] inline bool connection_events_loop_aborted() {
752}
753
754/* only here because of unireg_init(). */
755static inline void set_connection_events_loop_aborted(bool value) {
757}
758
759/**
760
761 Check if --help option or --validate-config is specified.
762
763 @retval false Neither 'help' or 'validate-config' option is enabled.
764 @retval true Either 'help' or 'validate-config' or both options
765 are enabled.
766*/
768 return (opt_help || opt_validate_config);
769}
770
771/**
772 Get mysqld offline mode.
773
774 @return a bool indicating the offline mode status of the server.
775*/
776inline bool mysqld_offline_mode() { return offline_mode.load(); }
777
778/**
779 Set offline mode with a given value
780
781 @param value true or false indicating the offline mode status of server.
782*/
783inline void set_mysqld_offline_mode(bool value) { offline_mode.store(value); }
784
785/**
786 Get status partial_revokes on server
787
788 @return a bool indicating partial_revokes status of the server.
789 @retval true Parital revokes is ON
790 @retval flase Partial revokes is OFF
791*/
793
794/**
795 Set partial_revokes with a given value
796
797 @param value true or false indicating the status of partial revokes
798 turned ON/OFF on server.
799*/
800void set_mysqld_partial_revokes(bool value);
801
803
804bool parse_authentication_policy(char *val,
805 std::vector<std::string> &policy_list);
806bool validate_authentication_policy(char *val);
808#ifdef _WIN32
809
810bool is_windows_service();
812bool update_named_pipe_full_access_group(const char *new_group_name);
813
814#endif
815
817extern bool opt_mandatory_roles_cache;
819
822/* This variable is a registry handler, defined in mysql_server component and
823 used as a output parameter for minimal chassis. */
824extern SERVICE_TYPE_NO_CONST(registry) * srv_registry;
826/* These global variables which are defined and used in
827 mysql_server component */
828extern SERVICE_TYPE(dynamic_loader_scheme_file) * scheme_file_srv;
829extern SERVICE_TYPE(dynamic_loader) * dynamic_loader_srv;
830
833
835
837#endif /* MYSQLD_INCLUDED */
int64 query_id_t
Definition: binlog.h:71
Definition: sql_bitmap.h:153
Definition: sql_bitmap.h:42
This class implements component loading through manifest file.
Definition: sql_component.h:99
Definition: nt_servc.h:23
Definition: rpl_async_conn_failover_configuration_propagation.h:143
The class is a Rpl_filter representing global replication filters, with a vector that references all ...
Definition: rpl_filter.h:531
Class that contains functionality to monitor group member's state, role and quorum changes on all the...
Definition: rpl_io_monitor.h:125
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:35
This class represents abstract time zone and provides basic interface for MYSQL_TIME <-> my_time_t co...
Definition: tztime.h:48
uint sync_binlog_period
Definition: binlog.cc:190
my_thread_attr_t connection_attrib
Definition: mysqld.cc:1605
char * opt_relay_logname
Definition: mysqld.h:263
bool server_id_supplied
Definition: mysqld.h:160
unsigned int PSI_cond_key
Instrumented cond key.
Definition: psi_cond_bits.h:43
unsigned int PSI_file_key
Instrumented file key.
Definition: psi_file_bits.h:47
unsigned int PSI_mutex_key
Instrumented mutex key.
Definition: psi_mutex_bits.h:51
unsigned int PSI_rwlock_key
Instrumented rwlock key.
Definition: psi_rwlock_bits.h:43
unsigned int PSI_socket_key
Instrumented socket key.
Definition: psi_socket_bits.h:48
unsigned int PSI_thread_key
Instrumented thread key.
Definition: psi_thread_bits.h:49
#define MAX_INDEXES
Definition: config.h:209
A better implementation of the UNIX ctype(3) library.
@ COM_END
Not a real command.
Definition: my_command.h:100
Common definition used by mysys, performance schema and server & client.
static constexpr int HOSTNAME_LENGTH
Definition: my_hostname.h:42
Some integer typedefs for easier portability.
unsigned long long int ulonglong
Definition: my_inttypes.h:55
int64_t int64
Definition: my_inttypes.h:67
int32_t int32
Definition: my_inttypes.h:65
uint32_t uint32
Definition: my_inttypes.h:66
Common #defines and includes for file and socket I/O.
#define FN_EXTLEN
Definition: my_io.h:81
#define FN_REFLEN
Definition: my_io.h:82
Defines various enable/disable and HAVE_ macros related to the performance schema instrumentation sys...
Functions related to handling of plugins and other dynamically loaded libraries.
#define MYSQL_PLUGIN_IMPORT
Definition: my_sharedlib.h:70
@ SQLCOM_END
Definition: my_sqlcommand.h:207
Common header for many mysys elements.
Defines to make different thread packages compatible.
pthread_attr_t my_thread_attr_t
Definition: my_thread_bits.h:48
Common definition between mysql server & client.
#define SERVER_VERSION_LENGTH
Definition: mysql_com.h:73
Instrumentation helpers for conditions.
ABI for instrumented mutexes.
Instrumentation helpers for rwlock.
bool opt_enable_named_pipe
Definition: mysqld.cc:1242
void persisted_variables_refresh_keyring_support()
Definition: mysqld.cc:1846
uint sync_relaylog_period
Definition: mysqld.h:243
PSI_file_key key_file_relaylog_index_cache
Definition: mysqld.cc:13866
PSI_cond_key key_COND_cache_status_changed
Definition: mysqld.cc:13747
PSI_mutex_key key_gtid_ensure_index_mutex
Definition: mysqld.cc:13592
ulong aborted_threads
Definition: mysqld.cc:1375
const char * mysql_real_data_home_ptr
Definition: mysqld.cc:1510
PSI_stage_info stage_flushing_applier_metadata
Definition: mysqld.cc:13931
PSI_stage_info stage_making_temp_file_append_before_load_data
Definition: mysqld.cc:13937
PSI_stage_info stage_waiting_for_replica_thread_to_start
Definition: mysqld.cc:13986
PSI_stage_info stage_cleaning_up
Definition: mysqld.cc:13914
ulong opt_keyring_migration_port
Definition: mysqld.cc:1220
PSI_stage_info stage_updating
Definition: mysqld.cc:13975
bool opt_allow_suspicious_udfs
Definition: mysqld.cc:1272
PSI_stage_info stage_rename_result_table
Definition: mysqld.cc:13950
Deployed_components * g_deployed_components
This variable holds handle to the object that's responsible for loading/unloading components from man...
Definition: mysqld.cc:1396
PSI_file_key key_file_load
Definition: mysqld.cc:13852
PSI_stage_info stage_rpl_apply_row_evt_update
Definition: mysqld.cc:13969
PSI_mutex_key key_TABLE_SHARE_LOCK_ha_data
Definition: mysqld.cc:13581
PSI_stage_info stage_deleting_from_reference_tables
Definition: mysqld.cc:13923
bool opt_source_verify_checksum
Definition: mysqld.cc:1324
PSI_file_key key_file_init
Definition: mysqld.cc:13860
PSI_stage_info stage_reading_event_from_the_relay_log
Definition: mysqld.cc:13946
struct aggregated_stats global_aggregated_stats
Definition: mysqld.cc:1552
uint test_flags
Definition: mysqld.cc:1336
void kill_mysql(void)
Definition: mysqld.cc:2500
PSI_stage_info stage_hook_begin_trans
Definition: mysqld.cc:13996
mysql_mutex_t LOCK_replica_trans_dep_tracker
Definition: mysqld.cc:1599
bool validate_authentication_policy(char *val)
Validate @authentication_policy variable value.
Definition: mysqld.cc:4807
ulong delayed_insert_timeout
Definition: mysqld.cc:1376
mysql_mutex_t LOCK_server_started
Definition: mysqld.cc:1606
mysql_service_registry_t * srv_registry
Definition: mysqld.cc:2012
bool sha256_password_proxy_users
Definition: mysqld.h:225
bool dynamic_plugins_are_initialized
Flag indicating if dynamic plugins have been loaded.
Definition: mysqld.cc:1955
PSI_thread_key key_thread_compress_gtid_table
Definition: mysqld.cc:13820
PSI_mutex_key key_mutex_slave_parallel_worker_count
Definition: mysqld.cc:13578
void set_mysqld_partial_revokes(bool value)
Set partial_revokes with a given value.
Definition: mysqld.cc:14346
PSI_stage_info stage_closing_tables
Definition: mysqld.cc:13915
PSI_file_key key_file_trn
Definition: mysqld.cc:13859
mysql_cond_t COND_manager
Definition: sql_manager.cc:59
char * opt_keyring_migration_socket
Definition: mysqld.cc:1217
int64 query_id_t
Definition: mysqld.h:736
uint ha_open_options
Definition: mysqld.h:250
bool opt_initialize
Definition: mysqld.cc:1240
PSI_cond_key key_relay_log_info_sleep_cond
Definition: mysqld.cc:13758
ulong delay_key_write_options
Definition: mysqld.cc:1338
char * my_bind_addr_str
Definition: mysqld.cc:1175
ulonglong opt_mts_pending_jobs_size_max
Definition: mysqld.cc:1359
bool mysqld_partial_revokes()
Get status partial_revokes on server.
Definition: mysqld.cc:14336
handlerton * innodb_hton
Definition: mysqld.cc:1262
const char * show_comp_option_name[]
Definition: mysqld.cc:1045
PSI_stage_info stage_waiting_for_relay_log_space
Definition: mysqld.cc:13984
bool opt_log_replica_updates
Definition: mysqld.cc:1246
uint protocol_version
Definition: mysqld.cc:1339
PSI_mutex_key key_LOCK_delegate_connection_mutex
Definition: mysqld.cc:13601
PSI_file_key key_file_slow_log
Definition: mysqld.cc:13862
ulong opt_server_id_mask
Definition: mysqld.cc:1266
mysql_mutex_t LOCK_rotate_binlog_master_key
Definition: mysqld.cc:1628
PSI_stage_info stage_query_end
Definition: mysqld.cc:13944
PSI_mutex_key key_source_info_thd_lock
Definition: mysqld.cc:13569
bool clone_recovery_error
True, if clone recovery has failed.
Definition: mysqld.cc:1319
char * default_tz_name
Definition: mysqld.cc:1492
MYSQL_PLUGIN_IMPORT bool mysqld_server_started
Definition: mysqld.h:373
ulonglong temptable_max_ram
Definition: mysqld.cc:1182
PSI_stage_info stage_replica_waiting_workers_to_exit
Definition: mysqld.cc:13967
bool using_udf_functions
Definition: mysqld.cc:1205
bool mysqld_offline_mode()
Get mysqld offline mode.
Definition: mysqld.h:776
MYSQL_PLUGIN_IMPORT MY_TMPDIR mysql_tmpdir_list
Definition: mysqld.cc:1554
PSI_stage_info stage_replica_has_read_all_relay_log
Definition: mysqld.cc:13955
uint replica_rows_last_search_algorithm_used
Definition: mysqld.cc:1362
bool opt_no_dd_upgrade
Definition: mysqld.cc:1238
int init_common_variables()
Definition: mysqld.cc:6584
PSI_cond_key key_PAGE_cond
Definition: mysqld.cc:13744
ulonglong max_binlog_stmt_cache_size
Definition: mysqld.h:323
struct st_VioSSLFd * ssl_acceptor_fd
PSI_mutex_key key_LOCK_thd_data
Definition: mysqld.cc:13561
long opt_upgrade_mode
Definition: mysqld.cc:1239
char * my_admin_bind_addr_str
Definition: mysqld.cc:1176
uint sync_relayloginfo_period
Definition: mysqld.h:243
PSI_stage_info stage_statistics
Definition: mysqld.cc:13971
bool is_secure_file_path(const char *path)
Test a file path to determine if the path is compatible with the secure file path restriction.
Definition: mysqld.cc:13044
PSI_file_key key_file_general_log
Definition: mysqld.cc:13861
ulong rpl_stop_replica_timeout
Definition: mysqld.cc:1383
mysql_mutex_t LOCK_manager
Definition: sql_manager.cc:58
PSI_mutex_key key_mutex_replica_reporting_capability_err_lock
Definition: mysqld.cc:13571
PSI_mutex_key key_mutex_slave_parallel_worker
Definition: mysqld.cc:13579
char * opt_keyring_migration_source
Definition: mysqld.cc:1218
ulong opt_mts_replica_parallel_workers
Definition: mysqld.cc:1358
PSI_stage_info stage_replica_waiting_to_reconnect_after_failed_event_read
Definition: mysqld.cc:13962
char * opt_keyring_migration_user
Definition: mysqld.cc:1214
Bitmap< 64 > Key_map
Definition: mysqld.h:77
PSI_stage_info stage_worker_waiting_for_commit_parent
Definition: mysqld.cc:13992
PSI_rwlock_key key_rwlock_rpl_filter_lock
Definition: mysqld.cc:13705
const char * log_error_dest
Definition: mysqld.cc:1494
PSI_mutex_key key_source_info_run_lock
Definition: mysqld.cc:13567
PSI_file_key key_file_misc
Definition: mysqld.cc:13856
PSI_stage_info stage_copy_to_tmp_table
Definition: mysqld.cc:13919
mysql_mutex_t LOCK_global_system_variables
Definition: mysqld.cc:1574
PSI_thread_key key_thread_one_connection
Definition: mysqld.cc:13819
PSI_cond_key key_COND_active
Definition: mysqld.cc:13745
PSI_stage_info stage_updating_reference_tables
Definition: mysqld.cc:13977
const char * server_uuid_ptr
Definition: mysqld.cc:1479
bool opt_replica_compressed_protocol
Definition: mysqld.cc:1243
bool old_mode
compatibility option:
Definition: mysqld.cc:1254
PSI_cond_key key_commit_order_manager_cond
Definition: mysqld.cc:13765
PSI_mutex_key key_RELAYLOG_LOCK_index
Definition: mysqld.cc:13587
PSI_rwlock_key key_rwlock_channel_to_filter_lock
Definition: mysqld.cc:13706
PSI_stage_info stage_queueing_source_event_to_the_relay_log
Definition: mysqld.cc:13945
mysql_component_t mysql_component_mysql_server
Definition: server_component.cc:1078
PSI_mutex_key key_commit_order_manager_mutex
Definition: mysqld.cc:13598
PSI_stage_info stage_update
Definition: mysqld.cc:13974
bool signal_restart_server()
Signal the server thread for restart.
Definition: mysqld.cc:2476
void my_init_signals()
Definition: mysqld.cc:3630
ulonglong replica_type_conversions_options
Definition: mysqld.cc:1357
PSI_stage_info stage_alter_inplace
Definition: mysqld.cc:13909
mysql_mutex_t LOCK_log_throttle_qni
Definition: mysqld.cc:1600
char mysql_unpacked_real_data_home[]
Definition: mysqld.cc:1501
ulong slave_trans_retries
Definition: mysqld.cc:1354
bool parse_authentication_policy(char *val, std::vector< std::string > &policy_list)
Parse @authentication_policy variable value.
Definition: mysqld.cc:4754
SHOW_VAR status_vars[]
Definition: mysqld.cc:11457
PSI_stage_info stage_checking_source_version
Definition: mysqld.cc:13912
PSI_stage_info stage_compressing_gtid_table
Definition: mysqld.cc:13916
uint mysqld_port
Definition: mysqld.h:251
ulong opt_tc_log_size
Definition: mysqld.cc:1208
PSI_stage_info stage_replica_waiting_worker_to_free_events
Definition: mysqld.cc:13965
PSI_stage_info stage_replica_waiting_to_reconnect_after_failed_binlog_dump_request
Definition: mysqld.cc:13961
uint replica_net_timeout
Definition: mysqld.cc:1355
PSI_cond_key key_source_info_data_cond
Definition: mysqld.cc:13749
handlerton * myisam_hton
Definition: mysqld.cc:1261
PSI_stage_info stage_sending_binlog_event_to_replica
Definition: mysqld.cc:13953
bool temptable_use_mmap
Definition: mysqld.cc:1184
bool opt_general_log
Definition: mysqld.cc:1196
PSI_stage_info stage_finished_reading_one_binlog_switching_to_next_binlog
Definition: mysqld.cc:13929
PSI_stage_info stage_suspending
Definition: mysqld.cc:13993
PSI_mutex_key key_LOCK_error_log
Definition: mysqld.cc:13560
PSI_file_key key_file_relaylog_index
Definition: mysqld.cc:13865
ulong table_def_size
Definition: mysqld.cc:1348
char system_time_zone_dst_off[30]
Definition: mysqld.h:286
int * get_remaining_argc()
Definition: mysqld.cc:1855
ulong connection_errors_peer_addr
Number of errors when reading the peer address.
Definition: mysqld.cc:1532
mysql_mutex_t LOCK_collect_instance_log
Definition: mysqld.cc:1611
PSI_stage_info stage_system_lock
Definition: mysqld.cc:13973
mysql_mutex_t LOCK_status
Definition: mysqld.cc:1573
ulong table_cache_size
Definition: mysqld.cc:1343
PSI_stage_info stage_replica_waiting_for_workers_to_process_queue
Definition: mysqld.cc:13960
mysql_rwlock_t LOCK_sys_init_replica
Definition: mysqld.cc:1601
std::atomic< query_id_t > atomic_global_query_id
Definition: mysqld.cc:1374
uint opt_large_page_size
Definition: mysqld.cc:1281
ulong binlog_stmt_cache_use
Definition: mysqld.cc:1381
PSI_stage_info stage_waiting_for_table_flush
Definition: mysqld.cc:13987
bool lower_case_file_system
Definition: mysqld.cc:1276
bool is_help_or_validate_option()
Check if –help option or –validate-config is specified.
Definition: mysqld.h:767
mysql_mutex_t LOCK_partial_revokes
Definition: mysqld.cc:1293
PSI_stage_info stage_replica_waiting_to_reconnect_after_failed_registration_on_source
Definition: mysqld.cc:13963
bool trust_function_creators
Definition: mysqld.cc:1298
PSI_stage_info stage_after_create
Definition: mysqld.cc:13907
PSI_mutex_key key_LOCK_thd_protocol
Definition: mysqld.cc:13563
PSI_mutex_key key_RELAYLOG_LOCK_log
Definition: mysqld.cc:13588
char lc_messages_dir[FN_REFLEN]
Definition: mysqld.cc:1497
PSI_stage_info stage_purging_old_relay_logs
Definition: mysqld.cc:13943
PSI_mutex_key key_RELAYLOG_LOCK_commit
Definition: mysqld.cc:13586
void thd_mem_cnt_alloc(THD *thd, size_t size, const char *key_name)
Definition: mysqld.cc:1881
mysql_cond_t COND_server_started
Definition: mysqld.cc:1607
PSI_mutex_key key_mutex_slave_parallel_pend_jobs
Definition: mysqld.cc:13577
MYSQL_PLUGIN_IMPORT struct System_variables global_system_variables
Definition: mysqld.cc:1549
const char * default_tmp_storage_engine
Definition: mysqld.cc:1181
PSI_stage_info stage_waiting_for_gtid_to_be_committed
Definition: mysqld.cc:13980
uint opt_server_id_bits
Definition: mysqld.cc:1265
PSI_stage_info stage_discard_or_import_tablespace
Definition: mysqld.cc:13924
bool opt_replica_preserve_commit_order
Definition: mysqld.cc:1360
PSI_stage_info stage_user_sleep
Definition: mysqld.cc:13978
PSI_mutex_key key_relay_log_info_sleep_lock
Definition: mysqld.cc:13573
PSI_stage_info stage_rpl_apply_row_evt_delete
Definition: mysqld.cc:13970
PSI_rwlock_key key_rwlock_receiver_tsid_lock
Definition: mysqld.cc:13704
PSI_stage_info stage_creating_tmp_table
Definition: mysqld.cc:13921
bool opt_skip_name_resolve
Definition: mysqld.cc:1202
const char * timestamp_type_names[]
Definition: mysqld.cc:1334
const char * first_keyword
Definition: mysqld.cc:1053
PSI_mutex_key key_structure_guard_mutex
Definition: mysqld.cc:13580
MYSQL_PLUGIN_IMPORT uint reg_ext_length
Definition: mysqld.cc:1504
bool opt_debugging
Definition: mysqld.cc:1167
PSI_mutex_key key_monitor_info_run_lock
Definition: mysqld.cc:13600
LEX_STRING opt_mandatory_roles
Definition: mysqld.cc:1192
char glob_hostname[HOSTNAME_LENGTH+1]
Definition: mysqld.cc:1496
PSI_mutex_key key_LOCK_thd_security_ctx
Definition: mysqld.cc:13564
PSI_stage_info stage_waiting_to_finalize_termination
Definition: mysqld.cc:13990
mysql_mutex_t LOCK_reset_gtid_table
Definition: mysqld.cc:1608
PSI_rwlock_key key_rwlock_channel_map_lock
Definition: mysqld.cc:13702
PSI_mutex_key key_LOCK_tc
Definition: mysqld.cc:13558
PSI_stage_info stage_worker_waiting_for_its_turn_to_commit
Definition: mysqld.cc:13991
char server_uuid[UUID_LENGTH+1]
Definition: mysqld.cc:1478
PSI_cond_key key_monitor_info_run_cond
Definition: mysqld.cc:13767
char * opt_disabled_storage_engines
Definition: mysqld.cc:1264
bool opt_bin_log
Definition: mysqld.cc:1195
mysql_mutex_t LOCK_password_reuse_interval
Definition: mysqld.cc:1290
char * opt_log_error_suppression_list
Definition: mysqld.cc:1212
ulong opt_binlog_group_commit_sync_no_delay_count
Definition: mysqld.cc:1371
PSI_stage_info stage_replica_reconnecting_after_failed_event_read
Definition: mysqld.cc:13957
const mysql_service_dynamic_loader_t * dynamic_loader_srv
Definition: persistent_dynamic_loader.cc:76
std::vector< std::string > authentication_policy_list
Definition: mysqld.cc:1517
bool opt_replica_sql_verify_checksum
Definition: mysqld.cc:1325
PSI_mutex_key key_LOCK_thd_sysvar
Definition: mysqld.cc:13562
char default_logfile_name[FN_REFLEN]
Definition: mysqld.cc:1486
sigset_t mysqld_signal_mask
Definition: mysqld.cc:1604
char * opt_slow_logname
Definition: mysqld.h:262
Rpl_acf_configuration_handler * rpl_acf_configuration_handler
Definition: mysqld.cc:1545
PSI_file_key key_file_frm
Definition: mysqld.cc:13851
PSI_stage_info stage_logging_slow_query
Definition: mysqld.cc:13936
PSI_cond_key key_RELAYLOG_update_cond
Definition: mysqld.cc:13762
PSI_stage_info stage_execution_of_init_command
Definition: mysqld.cc:13927
ulonglong temptable_max_mmap
Definition: mysqld.cc:1183
bool avoid_temporal_upgrade
Compatibility option to prevent auto upgrade of old temporals during certain ALTER TABLE operations.
Definition: mysqld.cc:1429
bool opt_log_unsafe_statements
Definition: mysqld.cc:1332
PSI_mutex_key key_LOCK_query_plan
Definition: mysqld.cc:13582
bool opt_myisam_use_mmap
Definition: mysqld.h:179
ulong delayed_insert_limit
Definition: mysqld.cc:1376
ulong what_to_log
Definition: mysqld.cc:1350
bool opt_super_readonly
Definition: mysqld.h:202
char *** get_remaining_argv()
Definition: mysqld.cc:1857
bool migrate_connect_options
Variable to check if connection related options are set as part of keyring migration.
Definition: mysqld.cc:1221
bool opt_log_slow_extra
Definition: mysqld.cc:1200
enum_server_operational_state
Definition: mysqld.h:153
@ SERVER_OPERATING
Definition: mysqld.h:155
@ SERVER_BOOTING
Definition: mysqld.h:154
@ SERVER_SHUTTING_DOWN
Definition: mysqld.h:156
PSI_stage_info stage_replica_waiting_event_from_coordinator
Definition: mysqld.cc:13959
bool opt_validate_config
Definition: mysqld.cc:1063
thread_local MEM_ROOT ** THR_MALLOC
Definition: mysqld.cc:1571
ulong connect_timeout
Definition: mysqld.h:310
char * opt_keyring_migration_host
Definition: mysqld.cc:1215
PSI_stage_info stage_rpl_apply_row_evt_write
Definition: mysqld.cc:13968
mysql_rwlock_t LOCK_system_variables_hash
Definition: mysqld.cc:1602
void refresh_status()
Reset global and session status variables.
Definition: mysqld.cc:13498
uint mysqld_admin_port
Definition: mysqld.cc:1177
bool server_shutting_down
Definition: mysqld.cc:1644
PSI_stage_info stage_waiting_for_the_next_event_in_relay_log
Definition: mysqld.cc:13988
ulong tc_log_max_pages_used
Definition: mysqld.h:245
ulong open_files_limit
Definition: mysqld.cc:1353
LEX_CSTRING sql_statement_names[(uint) SQLCOM_END+1]
Definition: mysqld.cc:4660
mysql_mutex_t LOCK_default_password_lifetime
Definition: mysqld.cc:1287
struct rand_struct sql_rand
used by sql_class.cc:THD::THD()
Definition: mysqld.cc:1922
mysql_mutex_t LOCK_global_conn_mem_limit
Definition: mysqld.cc:1636
ulong tablespace_def_size
Definition: mysqld.cc:1349
bool sp_automatic_privileges
Definition: mysqld.cc:1308
PSI_stage_info stage_end
Definition: mysqld.cc:13925
PSI_stage_info stage_registering_replica_on_source
Definition: mysqld.cc:13947
void thd_mem_cnt_free(THD *thd, size_t size)
Definition: mysqld.cc:1891
size_t mysql_unpacked_real_data_home_len
Definition: mysqld.cc:1502
std::atomic< bool > offline_mode
Definition: mysqld.cc:1280
mysql_mutex_t LOCK_prepared_stmt_count
The below lock protects access to two global server variables: max_prepared_stmt_count and prepared_s...
Definition: mysqld.cc:1584
PSI_socket_key key_socket_tcpip
Definition: mysqld.cc:14110
ulong tc_log_page_size
Definition: mysqld.h:245
bool opt_local_infile
Definition: mysqld.cc:1243
char * mysql_home_ptr
Definition: mysqld.cc:1692
char * lc_messages_dir_ptr
Definition: mysqld.cc:1500
const char * server_build_id_ptr
Definition: mysqld.cc:1482
PSI_file_key key_file_relaylog
Definition: mysqld.cc:13863
PSI_statement_info sql_statement_info[(uint) SQLCOM_END+1]
Statement instrumentation keys (sql).
Definition: mysqld.cc:4695
const char * load_default_groups[]
Definition: program.cc:263
PSI_mutex_key key_mta_gaq_LOCK
Definition: mysqld.cc:13596
mysql_mutex_t LOCK_sql_replica_skip_counter
Definition: mysqld.cc:1597
mysql_mutex_t LOCK_user_conn
Definition: mysqld.cc:1574
PSI_stage_info stage_flushing_applier_and_connection_metadata
Definition: mysqld.cc:13930
ulong mts_parallel_option
Definition: mysqld.cc:1364
ulong prepared_stmt_count
Definition: mysqld.h:318
uint opt_mta_checkpoint_period
Definition: mysqld.h:244
handlerton * temptable_hton
Definition: mysqld.cc:1260
const char * binary_keyword
Definition: mysqld.h:357
uint default_password_lifetime
Definition: mysqld.cc:1282
PSI_cond_key key_item_func_sleep_cond
Definition: mysqld.cc:13748
bool super_read_only
Definition: mysqld.cc:1268
ulong back_log
Definition: mysqld.cc:1342
ulong stored_program_cache_size
Soft upper limit for number of sp_head objects that can be stored in the sp_cache for one connection.
Definition: mysqld.cc:1424
ulong connection_errors_internal
Number of connection errors from internal server errors.
Definition: mysqld.cc:1530
ulonglong max_binlog_cache_size
Definition: mysqld.cc:1366
PSI_stage_info stage_fulltext_initialization
Definition: mysqld.cc:13933
char * opt_log_error_services
Definition: mysqld.cc:1213
MYSQL_PLUGIN_IMPORT char server_version[SERVER_VERSION_LENGTH]
Definition: mysqld.h:678
int32_t opt_regexp_stack_limit
Definition: mysqld.cc:1311
PSI_file_key key_file_loadfile
Definition: mysqld.cc:13853
PSI_stage_info stage_verifying_table
Definition: mysqld.cc:13979
bool opt_noacl
Definition: mysqld.h:222
Time_zone * default_tz
Definition: mysqld.cc:1508
PSI_cond_key key_source_info_start_cond
Definition: mysqld.cc:13750
mysql_component_t mysql_component_performance_schema
enum_server_operational_state get_server_state()
Returns the current state of the server : booting, operational or shutting down.
Definition: mysqld.cc:13476
PSI_statement_info stmt_info_rpl
Statement instrumentation key for replication.
Definition: mysqld.cc:1157
ulong slow_launch_time
Definition: mysqld.cc:1351
void gtid_server_cleanup()
GTID cleanup destroys objects and reset their pointer.
Definition: mysqld.cc:2652
PSI_stage_info stage_replica_reconnecting_after_failed_registration_on_source
Definition: mysqld.cc:13958
PSI_stage_info stage_source_has_sent_all_binlog_to_replica
Definition: mysqld.cc:13939
MYSQL_PLUGIN_IMPORT char * mysql_data_home
Definition: mysqld.cc:1509
PSI_file_key key_file_ERRMSG
Definition: mysqld.cc:13848
PSI_mutex_key key_LOCK_thd_query
Definition: mysqld.cc:13583
query_id_t next_query_id()
Definition: mysqld.h:743
PSI_cond_key key_COND_thr_lock
Definition: mysqld.cc:13764
PSI_cond_key key_gtid_ensure_index_cond
Definition: mysqld.cc:13763
bool opt_keyring_operations
Definition: mysqld.cc:1433
bool opt_replica_allow_batching
Definition: mysqld.cc:1248
PSI_socket_key key_socket_unix
Definition: mysqld.cc:14111
ulonglong log_output_options
Definition: mysqld.cc:1197
bool opt_persist_sensitive_variables_in_plaintext
Definition: mysqld.cc:1225
const char * mysqld_unix_port
Definition: mysqld.cc:1513
MYSQL_PLUGIN_IMPORT char pidfile_name[]
Definition: mysqld.cc:1484
mysql_mutex_t LOCK_mandatory_roles
Definition: mysqld.cc:1288
ulong binlog_stmt_cache_disk_use
Definition: mysqld.h:297
PSI_file_key key_file_log_event_data
Definition: mysqld.cc:13854
enum_binlog_error_action
Definition: mysqld.h:339
@ IGNORE_ERROR
Ignore the error and let server continue without binlogging.
Definition: mysqld.h:341
@ ABORT_SERVER
Abort the server.
Definition: mysqld.h:343
char * opt_protocol_compression_algorithms
Definition: mysqld.cc:1511
PSI_mutex_key key_RELAYLOG_LOCK_sync
Definition: mysqld.cc:13590
PSI_cond_key key_cond_slave_parallel_worker
Definition: mysqld.cc:13760
bool opt_help
Definition: mysqld.cc:1063
bool clone_startup
True, if restarted from a cloned database.
Definition: mysqld.cc:1315
MYSQL_PLUGIN_IMPORT ulong max_connections
Definition: mysqld.cc:1382
PSI_cond_key key_cond_mta_gaq
Definition: mysqld.cc:13761
PSI_mutex_key key_relay_log_info_log_space_lock
Definition: mysqld.cc:13575
PSI_stage_info stage_killing_replica
Definition: mysqld.cc:13935
struct System_status_var * get_thd_status_var(THD *thd, bool *aggregated)
Definition: mysqld.cc:1873
ulong opt_log_throttle_queries_not_using_indexes
Definition: mysqld.cc:1199
char * opt_keyring_migration_password
Definition: mysqld.cc:1216
mysql_mutex_t LOCK_crypt
Definition: mysqld.cc:1573
mysql_mutex_t LOCK_compress_gtid_table
Definition: mysqld.cc:1609
PSI_stage_info stage_wait_on_commit_ticket
Definition: mysqld.cc:14003
bool mysql_native_password_proxy_users
Definition: mysqld.h:224
ulong max_digest_length
Definition: sql_digest.cc:49
handlerton * heap_hton
Definition: mysqld.cc:1259
PSI_cond_key key_relay_log_info_stop_cond
Definition: mysqld.cc:13757
ulong binlog_error_action
Definition: mysqld.cc:1328
ulong stored_program_def_size
Definition: mysqld.cc:1347
PSI_mutex_key key_RELAYLOG_LOCK_log_end_pos
Definition: mysqld.cc:13589
MYSQL_PLUGIN_IMPORT int orig_argc
Definition: mysqld.h:374
bool opt_large_pages
Definition: mysqld.cc:1277
const mysql_service_dynamic_loader_scheme_file_t * scheme_file_srv
Definition: mysqld.cc:2014
static void set_connection_events_loop_aborted(bool value)
Definition: mysqld.h:755
const double log_10[309]
Definition: mysqld.cc:1437
PSI_stage_info stage_changing_source
Definition: mysqld.cc:13911
bool opt_always_activate_granted_roles
Definition: mysqld.cc:1194
Source_IO_monitor * rpl_source_io_monitor
Definition: mysqld.cc:1546
ulong binlog_stmt_cache_size
Definition: mysqld.h:322
ulong opt_log_timestamps
Definition: mysqld.cc:1335
mysql_mutex_t LOCK_authentication_policy
Definition: mysqld.cc:1634
uint select_errors
Definition: mysqld.h:250
PSI_thread_key key_thread_handle_con_admin_sockets
Definition: mysqld.cc:13822
PSI_stage_info stage_rename
Definition: mysqld.cc:13949
ulonglong global_conn_mem_limit
Definition: mysqld.cc:1389
PSI_file_key key_file_relaylog_cache
Definition: mysqld.cc:13864
char * pidfile_name_ptr
Definition: mysqld.h:264
std::atomic< int32 > atomic_replica_open_temp_tables
Definition: mysqld.cc:1352
char default_binlogfile_name[FN_REFLEN]
Definition: mysqld.cc:1487
bool opt_readonly
Definition: mysqld.h:201
ulong log_error_verbosity
Definition: mysqld.cc:1223
PSI_file_key key_file_hash_join
Definition: mysqld.cc:13868
ulong specialflag
Definition: mysqld.cc:1379
mysql_mutex_t LOCK_uuid_generator
Definition: mysqld.cc:1573
struct System_status_var global_status_var
Definition: mysqld.cc:1551
bool opt_skip_show_db
Definition: mysqld.h:169
const char * binlog_checksum_type_names[]
BINLOG_CHECKSUM variable.
Definition: log_event.cc:214
PSI_stage_info stage_communication_delegation
Definition: mysqld.cc:14002
PSI_file_key key_file_dbopt
Definition: mysqld.cc:13847
PSI_stage_info stage_waiting_for_no_channel_reference
Definition: mysqld.cc:13995
const char * default_storage_engine
Definition: mysqld.cc:1180
PSI_stage_info stage_binlog_transaction_decompress
Definition: mysqld.cc:13998
PSI_mutex_key key_RELAYLOG_LOCK_xids
Definition: mysqld.cc:13591
mysql_rwlock_t LOCK_server_shutting_down
Definition: mysqld.cc:1638
void set_mysqld_offline_mode(bool value)
Set offline mode with a given value.
Definition: mysqld.h:783
PSI_stage_info stage_converting_heap_to_ondisk
Definition: mysqld.cc:13918
uint host_cache_size
The size of the host_cache.
Definition: mysqld.cc:1222
PSI_thread_key key_thread_bootstrap
Definition: mysqld.cc:13817
PSI_file_key key_select_to_file
Definition: mysqld.cc:13849
MYSQL_PLUGIN_IMPORT const char * my_localhost
Definition: mysqld.cc:1054
PSI_file_key key_file_tclog
Definition: mysqld.cc:13857
const char * binlog_error_action_list[]
Definition: mysqld.cc:1329
PSI_stage_info stage_preparing
Definition: mysqld.cc:13942
PSI_file_key key_file_binlog_cache
Definition: mysqld.cc:1072
PSI_stage_info stage_setup
Definition: mysqld.cc:13954
MYSQL_PLUGIN_IMPORT char ** orig_argv
Definition: mysqld.h:375
ulong max_binlog_size
Definition: mysqld.cc:1353
mysql_cond_t COND_compress_gtid_table
Definition: mysqld.cc:1610
bool opt_large_files
Definition: mysqld.cc:1056
PSI_mutex_key key_thd_timer_mutex
Definition: mysqld.cc:13597
bool opt_require_secure_transport
Definition: mysqld.cc:1269
mysql_mutex_t LOCK_replica_net_timeout
Definition: mysqld.cc:1598
PSI_mutex_key key_LOCK_current_cond
Definition: mysqld.cc:13585
PSI_cond_key key_cond_slave_worker_hash
Definition: mysqld.cc:13766
MYSQL_PLUGIN_IMPORT std::atomic< int32 > connection_events_loop_aborted_flag
Definition: mysqld.cc:1209
bool opt_table_encryption_privilege_check
Definition: mysqld.cc:1435
bool opt_log_slow_replica_statements
Definition: mysqld.h:221
bool opt_partial_revokes
Definition: mysqld.cc:1285
PSI_mutex_key key_source_info_sleep_lock
Definition: mysqld.cc:13568
PSI_mutex_key key_LOCK_group_replication_connection_mutex
Definition: mysqld.cc:13602
ulong delayed_queue_size
Definition: mysqld.h:300
bool gtid_server_init()
GTID initialization.
Definition: mysqld.cc:2677
ulonglong global_conn_mem_counter
Definition: mysqld.cc:1390
PSI_file_key key_file_binlog_index_cache
Definition: mysqld.cc:1073
mysql_service_registry_t * srv_registry_no_lock
Definition: mysqld.cc:2013
long opt_binlog_group_commit_sync_delay
Definition: mysqld.cc:1370
PSI_mutex_key key_mutex_replica_worker_hash
Definition: mysqld.cc:13599
ulong opt_ssl_fips_mode
Definition: mysqld.cc:1963
char server_build_id[42]
Definition: build_id_test.cc:29
bool opt_binlog_expire_logs_auto_purge
Definition: mysqld.cc:1419
PSI_stage_info stage_init
Definition: mysqld.cc:13934
ulong locked_account_connection_count
Definition: mysqld.cc:1387
PSI_file_key key_file_binlog
Definition: mysqld.cc:13845
void reset_status_by_thd()
Definition: mysqld.cc:13547
PSI_file_key key_file_log_event_info
Definition: mysqld.cc:13855
PSI_stage_info stage_rpl_failover_wait_before_next_fetch
Definition: mysqld.cc:14001
PSI_cond_key key_source_info_sleep_cond
Definition: mysqld.cc:13752
PSI_stage_info stage_opening_tables
Definition: mysqld.cc:13940
PSI_rwlock_key key_rwlock_resource_group_mgr_map_lock
Definition: mysqld.cc:13713
bool check_proxy_users
Definition: mysqld.cc:1299
PSI_cond_key key_source_info_rotate_cond
Definition: mysqld.cc:13753
PSI_mutex_key key_relay_log_info_thd_lock
Definition: mysqld.cc:13574
PSI_stage_info stage_explaining
Definition: mysqld.cc:13928
char * opt_mysql_tmpdir
Definition: mysqld.cc:1514
void set_remaining_args(int argc, char **argv)
Definition: mysqld.cc:1850
ulong max_relay_log_size
Definition: mysqld.h:327
ulong binlog_row_metadata
Definition: mysqld.cc:1323
bool persisted_globals_load
Definition: mysqld.cc:1431
PSI_mutex_key key_LOG_LOCK_log
Definition: mysqld.cc:13565
PSI_mutex_key key_mta_temp_table_LOCK
Definition: mysqld.cc:13595
PSI_stage_info stage_requesting_binlog_dump
Definition: mysqld.cc:13951
PSI_mutex_key key_LOCK_cost_const
Definition: mysqld.cc:13584
bool relay_log_purge
Definition: mysqld.cc:1270
PSI_stage_info stage_deleting_from_main_table
Definition: mysqld.cc:13922
char * opt_bin_logname
Definition: mysqld.h:262
PSI_mutex_key key_relay_log_info_data_lock
Definition: mysqld.cc:13572
time_t server_start_time
Definition: mysqld.cc:1476
PSI_stage_info stage_waiting_for_source_update
Definition: mysqld.cc:13983
MYSQL_PLUGIN_IMPORT uint lower_case_table_names
Definition: mysqld.cc:1340
ulong current_pid
Definition: mysqld.cc:1414
bool locked_in_memory
Definition: mysqld.cc:1206
PSI_cond_key key_relay_log_info_log_space_cond
Definition: mysqld.cc:13755
PSI_stage_info stage_alter_inplace_commit
Definition: mysqld.cc:13910
PSI_file_key key_file_fileparser
Definition: mysqld.cc:13850
const char * in_left_expr_name
name of reference on left expression in rewritten IN subquery
Definition: mysqld.cc:1526
ulong replica_exec_mode_options
Definition: mysqld.cc:1356
enum_delay_key_write
Definition: mysqld.h:253
@ DELAY_KEY_WRITE_ON
Definition: mysqld.h:255
@ DELAY_KEY_WRITE_NONE
Definition: mysqld.h:254
@ DELAY_KEY_WRITE_ALL
Definition: mysqld.h:256
mysql_mutex_t LOCK_replica_list
Protects slave_list in rpl_source.cc; the list of currently running dump threads with metadata for th...
Definition: mysqld.cc:1590
mysql_mutex_t LOCK_error_messages
Definition: mysqld.cc:1574
bool log_bin_supplied
Definition: mysqld.cc:1474
void clean_up_mysqld_mutexes()
Definition: mysqld.cc:2582
ulong binlog_expire_logs_seconds
Definition: mysqld.cc:1418
PSI_cond_key key_cond_slave_parallel_pend_jobs
Definition: mysqld.cc:13759
char * default_auth_plugin
Definition: mysqld.cc:1693
PSI_stage_info stage_connecting_to_source
Definition: mysqld.cc:13917
PSI_stage_info stage_rpl_failover_fetching_source_member_details
Definition: mysqld.cc:13999
PSI_stage_info stage_binlog_transaction_compress
Definition: mysqld.cc:13997
PSI_rwlock_key key_rwlock_LOCK_logger
Definition: mysqld.cc:13701
PSI_file_key key_file_trg
Definition: mysqld.cc:13858
char * opt_init_file
Definition: mysqld.cc:1498
bool relay_log_recovery
Definition: mysqld.cc:1271
PSI_rwlock_key key_rwlock_gtid_mode_lock
Definition: mysqld.cc:1112
PSI_file_key key_file_binlog_index
Definition: mysqld.cc:13846
PSI_cond_key key_COND_pool
Definition: mysqld.cc:13746
bool opt_log_queries_not_using_indexes
Definition: mysqld.cc:1198
PSI_stage_info stage_alter_inplace_prepare
Definition: mysqld.cc:13908
const char * opt_tc_log_file
Definition: mysqld.cc:1499
PSI_stage_info stage_rpl_failover_updating_source_member_details
Definition: mysqld.cc:14000
LEX_STRING opt_init_replica
Definition: mysqld.h:380
PSI_rwlock_key key_rwlock_channel_lock
Definition: mysqld.cc:13703
struct my_option my_long_early_options[]
Definition: mysqld.cc:10660
PSI_thread_key key_thread_handle_manager
Definition: mysqld.cc:13818
char * opt_keyring_migration_destination
Definition: mysqld.cc:1219
uint32 gtid_executed_compression_period
Definition: mysqld.cc:1331
PSI_stage_info stage_starting
Definition: mysqld.cc:13994
bool opt_slow_log
Definition: mysqld.h:164
ulong tc_log_page_waits
Definition: tc_log.cc:306
mysql_rwlock_t LOCK_sys_init_connect
Definition: mysqld.cc:1601
struct System_variables max_system_variables
Definition: mysqld.cc:1550
char * opt_authentication_policy
Definition: mysqld.cc:1516
bool check_and_update_partial_revokes_sysvar(THD *thd)
If there exists at least one restrictions on any user, then update global variables which track the p...
Definition: mysqld.cc:14360
bool update_authentication_policy()
Update @authentication_policy variable value.
Definition: mysqld.cc:4856
const char * opt_secure_file_priv
Definition: mysqld.cc:1273
PSI_mutex_key key_source_info_data_lock
Definition: mysqld.cc:13566
bool opt_log_slow_admin_statements
Definition: mysqld.cc:1274
ulong binlog_cache_size
Definition: mysqld.cc:1365
PSI_stage_info stage_freeing_items
Definition: mysqld.cc:13932
LEX_STRING opt_init_connect
Definition: mysqld.cc:1188
ulong binlog_checksum_options
Definition: mysqld.cc:1322
mysql_mutex_t LOCK_admin_tls_ctx_options
Definition: mysqld.cc:1292
bool binlog_gtid_simple_recovery
Definition: mysqld.cc:1327
PSI_stage_info stage_waiting_for_handler_commit
Definition: mysqld.cc:13981
MYSQL_PLUGIN_IMPORT ulong server_id
Definition: mysqld.h:351
char * opt_general_logname
Definition: mysqld.cc:1684
ulong binlog_cache_use
Definition: mysqld.cc:1380
ulong max_connect_errors
Definition: mysqld.cc:1382
uint sync_masterinfo_period
Definition: mysqld.h:244
PSI_stage_info stage_searching_rows_for_update
Definition: mysqld.cc:13952
PSI_stage_info stage_creating_table
Definition: mysqld.cc:13920
ulong binlog_cache_disk_use
Definition: mysqld.h:296
ulong max_prepared_stmt_count
Limit of the total number of prepared statements in the server.
Definition: mysqld.cc:1402
ulong sql_rnd_with_mutex()
Definition: mysqld.cc:1865
ulong binlog_row_event_max_size
Definition: mysqld.cc:1321
ulong flush_time
Definition: mysqld.h:317
PSI_thread_key key_thread_parser_service
Definition: mysqld.cc:13821
PSI_stage_info stage_removing_tmp_table
Definition: mysqld.cc:13948
mysql_mutex_t LOCK_tls_ctx_options
Definition: mysqld.cc:1291
int32 opt_binlog_max_flush_queue_time
Definition: mysqld.cc:1369
PSI_stage_info stage_manage_keys
Definition: mysqld.cc:13938
PSI_mutex_key key_source_info_rotate_lock
Definition: mysqld.cc:13570
PSI_mutex_key key_hash_filo_lock
Definition: mysqld.cc:13559
bool read_only
Definition: mysqld.cc:1267
PSI_stage_info stage_sql_thd_waiting_until_delay
Definition: mysqld.cc:13972
bool opt_mandatory_roles_cache
Definition: mysqld.cc:1193
PSI_stage_info stage_executing
Definition: mysqld.cc:13926
PSI_stage_info stage_replica_reconnecting_after_failed_binlog_dump_request
Definition: mysqld.cc:13956
PSI_stage_info stage_replica_waiting_worker_queue
Definition: mysqld.cc:13964
PSI_stage_info stage_replica_waiting_worker_to_release_partition
Definition: mysqld.cc:13966
MYSQL_PLUGIN_IMPORT char mysql_real_data_home[]
Definition: mysqld.cc:1497
int32_t opt_regexp_time_limit
Definition: mysqld.cc:1310
PSI_mutex_key key_relay_log_info_run_lock
Definition: mysqld.cc:13576
ulong schema_def_size
Definition: mysqld.cc:1346
ulong replica_max_allowed_packet
Definition: mysqld.cc:1367
PSI_file_key key_file_sdi
Definition: mysqld.cc:13867
mysql_mutex_t LOCK_keyring_operations
Definition: mysqld.cc:1623
PSI_statement_info com_statement_info[(uint) COM_END+1]
Statement instrumentation keys (com).
Definition: mysqld.cc:4696
PSI_stage_info stage_waiting_for_the_replica_thread_to_advance_position
Definition: mysqld.cc:13989
uint opt_mta_checkpoint_group
Definition: mysqld.h:244
enum_replica_type_conversions
Definition: mysqld.h:193
@ REPLICA_TYPE_CONVERSIONS_ALL_UNSIGNED
Definition: mysqld.h:196
@ REPLICA_TYPE_CONVERSIONS_ALL_SIGNED
Definition: mysqld.h:197
@ REPLICA_TYPE_CONVERSIONS_ALL_NON_LOSSY
Definition: mysqld.h:195
@ REPLICA_TYPE_CONVERSIONS_ALL_LOSSY
Definition: mysqld.h:194
bool password_require_current
Definition: mysqld.cc:1283
mysql_mutex_t LOCK_password_history
Definition: mysqld.cc:1289
bool opt_general_log_raw
Definition: mysqld.h:164
bool opt_safe_user_create
Definition: mysqld.cc:1244
PSI_stage_info stage_updating_main_table
Definition: mysqld.cc:13976
PSI_socket_key key_socket_client_connection
Definition: mysqld.cc:14112
bool opt_using_transactions
Definition: mysqld.cc:1207
PSI_stage_info stage_waiting_for_source_to_send_event
Definition: mysqld.cc:13982
PSI_cond_key key_relay_log_info_data_cond
Definition: mysqld.cc:13754
Rpl_global_filter rpl_global_filter
Definition: mysqld.cc:1543
bool opt_verbose
Definition: mysql_ssl_rsa_setup.cc:130
PSI_cond_key key_source_info_stop_cond
Definition: mysqld.cc:13751
PSI_stage_info stage_checking_permissions
Definition: mysqld.cc:13913
PSI_stage_info stage_waiting_for_replica_mutex_on_exit
Definition: mysqld.cc:13985
PSI_cond_key key_COND_group_replication_connection_cond_var
Definition: mysqld.cc:13769
PSI_cond_key key_relay_log_info_start_cond
Definition: mysqld.cc:13756
PSI_stage_info stage_optimizing
Definition: mysqld.cc:13941
char system_time_zone_dst_on[30]
Definition: mysqld.cc:1485
MYSQL_PLUGIN_IMPORT char reg_ext[FN_EXTLEN]
Definition: mysqld.cc:1498
long tc_heuristic_recover
Definition: mysqld.cc:1341
bool connection_events_loop_aborted()
Definition: mysqld.h:750
bool opt_disable_networking
Definition: mysqld.cc:1201
bool listen_admin_interface_in_separate_thread
Definition: mysqld.cc:1178
size_t mysql_data_home_len
Definition: mysqld.cc:1503
static char * path
Definition: mysqldump.cc:148
static char * shared_memory_base_name
Definition: mysqltest.cc:199
Performance schema instrumentation interface.
Performance schema instrumentation interface.
Instrumentation helpers for mutexes.
Performance schema instrumentation interface.
Performance schema instrumentation interface.
Performance schema instrumentation interface.
Performance schema instrumentation interface.
Performance schema instrumentation interface.
NTService * get_win_service_ptr()
bool is_windows_service()
#define SERVICE_TYPE(name)
Generates the standard Service type name.
Definition: service.h:75
#define SERVICE_TYPE_NO_CONST(name)
Generates the standard Service type name.
Definition: service.h:70
Windows NT Service class library.
File containing constants that can be used throughout the server.
constexpr const size_t UUID_LENGTH
Definition: sql_const.h:264
The MEM_ROOT is a simple arena, where allocations are carved out of larger blocks.
Definition: my_alloc.h:82
Definition: mysql_lex_string.h:39
Definition: mysql_lex_string.h:34
Definition: my_sys.h:315
Stage instrument information.
Definition: psi_stage_bits.h:73
Statement instrument information.
Definition: psi_statement_bits.h:132
SHOW STATUS Server status variable.
Definition: status_var.h:78
Per thread status variables.
Definition: system_variables.h:525
Definition: system_variables.h:202
To facilitate calculating values of status variables aggregated per all THDs in real-time,...
Definition: aggregated_stats.h:38
handlerton is a singleton structure - one instance per storage engine - to provide access to storage ...
Definition: handler.h:2718
Definition: my_getopt.h:92
Carries information on the specific Component, all Service Implementations it provides,...
Definition: dynamic_loader.h:262
An instrumented cond structure.
Definition: mysql_cond_bits.h:49
An instrumented mutex structure.
Definition: mysql_mutex_bits.h:49
An instrumented rwlock structure.
Definition: mysql_rwlock_bits.h:50
Definition: mysql_com.h:1114
Definition: violite.h:255
Include file for Sun RPC to compile out of the box.