API Reference
Every generated Plugin API class, macro, typedef, and function on one page, including the plugin services and the audit, authentication, and encryption plugin interfaces.
Groups
Classes
struct st_mysql_xid is binary compatible with the XID structure as in the X/Open CAE Specification, Distributed Transaction Processing: The XA Specification, X/Open Company Ltd., 1991. http://www.opengroup.org/bookstore/catalog/c193.htm
Server authentication plugin descriptor
Provides plugin access to communication channel
MariaDB extension for plugins declaration structure.
Plugin description structure.
Replication plugin descriptor
Encryption plugin descriptor
Provides server plugin access to authentication information
Password validation plugin descriptor
Macros
psi_likely
Defined in psi/psi.h:47
psi_unlikely
Defined in psi/psi.h:48
PSI_SCHEMA_NAME_LEN
Defined in psi/psi.h:1198
PSI_DYNAMIC_CALL
Defined in psi/psi.h:3028
MYSQL_DLLEXPORT
Defined in plugin.h:39
MYSQL_PLUGIN_EXPORT
Defined in plugin.h:45
MYSQL_XIDDATASIZE
Defined in plugin.h:62
MYSQL_PLUGIN_INTERFACE_VERSION
Defined in plugin.h:84
MySQL plugin interface version
MARIA_PLUGIN_INTERFACE_VERSION
Defined in plugin.h:87
MariaDB plugin interface version
MYSQL_UDF_PLUGIN
Defined in plugin.h:92
not implemented
MYSQL_STORAGE_ENGINE_PLUGIN
Defined in plugin.h:93
MYSQL_FTPARSER_PLUGIN
Defined in plugin.h:94
Full-text parser plugin
MYSQL_DAEMON_PLUGIN
Defined in plugin.h:95
MYSQL_INFORMATION_SCHEMA_PLUGIN
Defined in plugin.h:96
MYSQL_AUDIT_PLUGIN
Defined in plugin.h:97
MYSQL_REPLICATION_PLUGIN
Defined in plugin.h:98
MYSQL_AUTHENTICATION_PLUGIN
Defined in plugin.h:99
MYSQL_MAX_PLUGIN_TYPE_NUM
Defined in plugin.h:100
The number of plugin types
MariaDB_PASSWORD_VALIDATION_PLUGIN
Defined in plugin.h:104
Client and server password validation Encryption and key management plugins
MariaDB_ENCRYPTION_PLUGIN
Defined in plugin.h:106
Plugins for SQL data storage types
MariaDB_DATA_TYPE_PLUGIN
Defined in plugin.h:108
Plugins for new native SQL functions
MariaDB_FUNCTION_PLUGIN
Defined in plugin.h:110
PLUGIN_LICENSE_PROPRIETARY
Defined in plugin.h:113
PLUGIN_LICENSE_GPL
Defined in plugin.h:114
PLUGIN_LICENSE_BSD
Defined in plugin.h:115
PLUGIN_LICENSE_PROPRIETARY_STRING
Defined in plugin.h:117
PLUGIN_LICENSE_GPL_STRING
Defined in plugin.h:118
PLUGIN_LICENSE_BSD_STRING
Defined in plugin.h:119
MariaDB_PLUGIN_MATURITY_UNKNOWN
Defined in plugin.h:122
MariaDB_PLUGIN_MATURITY_EXPERIMENTAL
Defined in plugin.h:123
MariaDB_PLUGIN_MATURITY_ALPHA
Defined in plugin.h:124
MariaDB_PLUGIN_MATURITY_BETA
Defined in plugin.h:125
MariaDB_PLUGIN_MATURITY_GAMMA
Defined in plugin.h:126
MariaDB_PLUGIN_MATURITY_STABLE
Defined in plugin.h:127
__MYSQL_DECLARE_PLUGIN
Defined in plugin.h:137
MARIA_DECLARE_PLUGIN__
Defined in plugin.h:142
mysql_declare_plugin
Defined in plugin.h:169
maria_declare_plugin
Defined in plugin.h:175
mysql_declare_plugin_end
Defined in plugin.h:181
maria_declare_plugin_end
Defined in plugin.h:182
SHOW_INT
Defined in plugin.h:197
SHOW_LONG
Defined in plugin.h:198
SHOW_LONGLONG
Defined in plugin.h:199
SHOW_VAR_FUNC_BUFF_SIZE
Defined in plugin.h:214
PLUGIN_OPT_NO_INSTALL
Defined in plugin.h:234
Not dynamically loadable
PLUGIN_OPT_NO_UNINSTALL
Defined in plugin.h:235
Not dynamically unloadable
PLUGIN_VAR_BOOL
Defined in plugin.h:243
PLUGIN_VAR_INT
Defined in plugin.h:244
PLUGIN_VAR_LONG
Defined in plugin.h:245
PLUGIN_VAR_LONGLONG
Defined in plugin.h:246
PLUGIN_VAR_STR
Defined in plugin.h:247
PLUGIN_VAR_ENUM
Defined in plugin.h:248
PLUGIN_VAR_SET
Defined in plugin.h:249
PLUGIN_VAR_DOUBLE
Defined in plugin.h:250
PLUGIN_VAR_UNSIGNED
Defined in plugin.h:251
PLUGIN_VAR_THDLOCAL
Defined in plugin.h:252
Variable is per-connection
PLUGIN_VAR_READONLY
Defined in plugin.h:253
Server variable is read only
PLUGIN_VAR_NOSYSVAR
Defined in plugin.h:254
Not a server variable
PLUGIN_VAR_NOCMDOPT
Defined in plugin.h:255
Not a command line option
PLUGIN_VAR_NOCMDARG
Defined in plugin.h:256
No argument for cmd line
PLUGIN_VAR_RQCMDARG
Defined in plugin.h:257
Argument required for cmd line
PLUGIN_VAR_OPCMDARG
Defined in plugin.h:258
Argument optional for cmd line
PLUGIN_VAR_DEPRECATED
Defined in plugin.h:259
Server variable is deprecated
PLUGIN_VAR_MEMALLOC
Defined in plugin.h:260
String needs memory allocated
PLUGIN_VAR_MASK
Defined in plugin.h:310
MYSQL_PLUGIN_VAR_HEADER
Defined in plugin.h:316
MYSQL_SYSVAR_NAME
Defined in plugin.h:323
MYSQL_SYSVAR
Defined in plugin.h:324
DECLARE_MYSQL_SYSVAR_BASIC
Defined in plugin.h:335
DECLARE_MYSQL_SYSVAR_CONST_BASIC
Defined in plugin.h:341
DECLARE_MYSQL_SYSVAR_SIMPLE
Defined in plugin.h:347
DECLARE_MYSQL_SYSVAR_TYPELIB
Defined in plugin.h:354
DECLARE_THDVAR_FUNC
Defined in plugin.h:360
DECLARE_MYSQL_THDVAR_BASIC
Defined in plugin.h:363
DECLARE_MYSQL_THDVAR_SIMPLE
Defined in plugin.h:370
DECLARE_MYSQL_THDVAR_TYPELIB
Defined in plugin.h:378
MYSQL_SYSVAR_BOOL
Defined in plugin.h:391
MYSQL_SYSVAR_STR
Defined in plugin.h:396
MYSQL_SYSVAR_CONST_STR
Defined in plugin.h:401
MYSQL_SYSVAR_INT
Defined in plugin.h:406
MYSQL_SYSVAR_UINT
Defined in plugin.h:411
MYSQL_SYSVAR_LONG
Defined in plugin.h:416
MYSQL_SYSVAR_ULONG
Defined in plugin.h:421
MYSQL_SYSVAR_LONGLONG
Defined in plugin.h:426
MYSQL_SYSVAR_ULONGLONG
Defined in plugin.h:431
MYSQL_SYSVAR_UINT64_T
Defined in plugin.h:436
MYSQL_SYSVAR_SIZE_T
Defined in plugin.h:447
MYSQL_SYSVAR_ENUM
Defined in plugin.h:453
MYSQL_SYSVAR_SET
Defined in plugin.h:458
MYSQL_SYSVAR_DOUBLE
Defined in plugin.h:463
MYSQL_THDVAR_BOOL
Defined in plugin.h:468
MYSQL_THDVAR_STR
Defined in plugin.h:473
MYSQL_THDVAR_INT
Defined in plugin.h:478
MYSQL_THDVAR_UINT
Defined in plugin.h:483
MYSQL_THDVAR_LONG
Defined in plugin.h:488
MYSQL_THDVAR_ULONG
Defined in plugin.h:493
MYSQL_THDVAR_LONGLONG
Defined in plugin.h:498
MYSQL_THDVAR_ULONGLONG
Defined in plugin.h:503
MYSQL_THDVAR_ENUM
Defined in plugin.h:508
MYSQL_THDVAR_SET
Defined in plugin.h:513
MYSQL_THDVAR_DOUBLE
Defined in plugin.h:518
SYSVAR
Defined in plugin.h:525
THDVAR
Defined in plugin.h:529
MYSQL_DAEMON_INTERFACE_VERSION
Defined in plugin.h:600
MYSQL_INFORMATION_SCHEMA_INTERFACE_VERSION
Defined in plugin.h:618
MYSQL_HANDLERTON_INTERFACE_VERSION
Defined in plugin.h:636
MYSQL_REPLICATION_INTERFACE_VERSION
Defined in plugin.h:655
MYSQL_VALUE_TYPE_STRING
Defined in plugin.h:664
MYSQL_VALUE_TYPE_REAL
Defined in plugin.h:665
MYSQL_VALUE_TYPE_INT
Defined in plugin.h:666
MYSQL_SERVICES_INCLUDED
Defined in services.h:51
PSI_PS_CALL
Defined in psi/mysql_ps.h:34
MYSQL_CREATE_PS
Defined in psi/mysql_ps.h:49
MYSQL_EXECUTE_PS
Defined in psi/mysql_ps.h:51
MYSQL_DESTROY_PS
Defined in psi/mysql_ps.h:53
MYSQL_REPREPARE_PS
Defined in psi/mysql_ps.h:55
MYSQL_SET_PS_TEXT
Defined in psi/mysql_ps.h:57
PSI_SP_CALL
Defined in psi/mysql_sp.h:34
MYSQL_START_SP
Defined in psi/mysql_sp.h:41
MYSQL_END_SP
Defined in psi/mysql_sp.h:50
MYSQL_DROP_SP
Defined in psi/mysql_sp.h:58
MYSQL_GET_SP_SHARE
Defined in psi/mysql_sp.h:66
PSI_INSTRUMENT_ME
Defined in psi/psi_base.h:47
PSI_INSTRUMENT_MEM
Defined in psi/psi_base.h:48
PSI_NOT_INSTRUMENTED
Defined in psi/psi_base.h:50
PSI_FLAG_GLOBAL
Defined in psi/psi_base.h:57
Global flag. This flag indicate that an instrumentation point is a global variable, or a singleton.
PSI_FLAG_MUTABLE
Defined in psi/psi_base.h:64
Mutable flag. This flag indicate that an instrumentation point is a general placeholder, that can mutate into a more specific instrumentation point.
PSI_FLAG_THREAD
Defined in psi/psi_base.h:66
PSI_FLAG_STAGE_PROGRESS
Defined in psi/psi_base.h:73
Stage progress flag. This flag apply to the stage instruments only. It indicates the instrumentation provides progress data.
PSI_RWLOCK_FLAG_SX
Defined in psi/psi_base.h:79
Shared Exclusive flag. Indicates that rwlock support the shared exclusive state.
PSI_FLAG_TRANSFER
Defined in psi/psi_base.h:86
Transferable flag. This flag indicate that an instrumented object can be created by a thread and destroyed by another thread.
PSI_FLAG_VOLATILITY_SESSION
Defined in psi/psi_base.h:94
Volatility flag. This flag indicate that an instrumented object has a volatility (life cycle) comparable to the volatility of a session.
PSI_FLAG_THREAD_SYSTEM
Defined in psi/psi_base.h:100
System thread flag. Indicates that the instrumented object exists on a system thread.
PSI_CALL_start_metadata_wait
Defined in psi/mysql_mdl.h:45
PSI_CALL_end_metadata_wait
Defined in psi/mysql_mdl.h:46
PSI_CALL_create_metadata_lock
Defined in psi/mysql_mdl.h:47
PSI_CALL_set_metadata_lock_status
Defined in psi/mysql_mdl.h:48
PSI_CALL_destroy_metadata_lock
Defined in psi/mysql_mdl.h:49
mysql_mdl_create
Defined in psi/mysql_mdl.h:74
Instrumented metadata lock creation.
Parameters
I
Metadata lock identity
K
Metadata key
T
Metadata lock type
D
Metadata lock duration
S
Metadata lock status
F
request source file
L
request source line
I
Metadata lock identity
K
Metadata key
T
Metadata lock type
D
Metadata lock duration
S
Metadata lock status
F
request source file
L
request source line
mysql_mdl_set_status
Defined in psi/mysql_mdl.h:81
mysql_mdl_destroy
Defined in psi/mysql_mdl.h:95
Instrumented metadata lock destruction.
Parameters
M
Metadata lock
M
Metadata lock
PSI_FILE_CALL
Defined in psi/mysql_file.h:52
mysql_file_register
Defined in psi/mysql_file.h:65
File registration.
mysql_file_fgets
Defined in psi/mysql_file.h:77
Instrumented fgets. mysql_file_fgets is a replacement for fgets.
mysql_file_fgetc
Defined in psi/mysql_file.h:89
Instrumented fgetc. mysql_file_fgetc is a replacement for fgetc.
mysql_file_fputs
Defined in psi/mysql_file.h:101
Instrumented fputs. mysql_file_fputs is a replacement for fputs.
mysql_file_fputc
Defined in psi/mysql_file.h:114
Instrumented fputc. mysql_file_fputc is a replacement for fputc.
mysql_file_fprintf
Defined in psi/mysql_file.h:123
Instrumented fprintf. mysql_file_fprintf is a replacement for fprintf.
mysql_file_vfprintf
Defined in psi/mysql_file.h:134
Instrumented vfprintf. mysql_file_vfprintf is a replacement for vfprintf.
mysql_file_fflush
Defined in psi/mysql_file.h:147
Instrumented fflush. mysql_file_fflush is a replacement for fflush.
mysql_file_feof
Defined in psi/mysql_file.h:156
Instrumented feof. mysql_file_feof is a replacement for feof.
mysql_file_fstat
Defined in psi/mysql_file.h:167
Instrumented fstat. mysql_file_fstat is a replacement for my_fstat.
mysql_file_stat
Defined in psi/mysql_file.h:180
Instrumented stat. mysql_file_stat is a replacement for my_stat.
mysql_file_chsize
Defined in psi/mysql_file.h:193
Instrumented chsize. mysql_file_chsize is a replacement for my_chsize.
mysql_file_fopen
Defined in psi/mysql_file.h:206
Instrumented fopen. mysql_file_fopen is a replacement for my_fopen.
mysql_file_fclose
Defined in psi/mysql_file.h:226
Instrumented fclose. mysql_file_fclose is a replacement for my_fclose. Without the instrumentation, this call will have the same behavior as the undocumented and possibly platform specific my_fclose(NULL, ...) behavior. With the instrumentation, mysql_fclose(NULL, ...) will safely return 0, which is an extension compared to my_fclose and is therefore compliant. mysql_fclose is on purpose not implementing
, since doing so could introduce regressions.
mysql_file_fread
Defined in psi/mysql_file.h:239
Instrumented fread. mysql_file_fread is a replacement for my_fread.
mysql_file_fwrite
Defined in psi/mysql_file.h:252
Instrumented fwrite. mysql_file_fwrite is a replacement for my_fwrite.
mysql_file_fseek
Defined in psi/mysql_file.h:265
Instrumented fseek. mysql_file_fseek is a replacement for my_fseek.
mysql_file_ftell
Defined in psi/mysql_file.h:278
Instrumented ftell. mysql_file_ftell is a replacement for my_ftell.
mysql_file_create
Defined in psi/mysql_file.h:291
Instrumented create. mysql_file_create is a replacement for my_create.
mysql_file_create_temp
Defined in psi/mysql_file.h:304
Instrumented create_temp_file. mysql_file_create_temp is a replacement for create_temp_file.
mysql_file_open
Defined in psi/mysql_file.h:317
Instrumented open. mysql_file_open is a replacement for my_open.
mysql_file_close
Defined in psi/mysql_file.h:330
Instrumented close. mysql_file_close is a replacement for my_close.
mysql_file_read
Defined in psi/mysql_file.h:343
Instrumented read. mysql_read is a replacement for my_read.
mysql_file_write
Defined in psi/mysql_file.h:356
Instrumented write. mysql_file_write is a replacement for my_write.
mysql_file_pread
Defined in psi/mysql_file.h:369
Instrumented pread. mysql_pread is a replacement for my_pread.
mysql_file_pwrite
Defined in psi/mysql_file.h:382
Instrumented pwrite. mysql_file_pwrite is a replacement for my_pwrite.
mysql_file_seek
Defined in psi/mysql_file.h:395
Instrumented seek. mysql_file_seek is a replacement for my_seek.
mysql_file_tell
Defined in psi/mysql_file.h:408
Instrumented tell. mysql_file_tell is a replacement for my_tell.
mysql_file_delete
Defined in psi/mysql_file.h:421
Instrumented delete. mysql_file_delete is a replacement for my_delete.
mysql_file_rename
Defined in psi/mysql_file.h:434
Instrumented rename. mysql_file_rename is a replacement for my_rename.
mysql_file_create_with_symlink
Defined in psi/mysql_file.h:449
Instrumented create with symbolic link. mysql_file_create_with_symlink is a replacement for my_create_with_symlink.
mysql_file_delete_with_symlink
Defined in psi/mysql_file.h:463
Instrumented delete with symbolic link. mysql_file_delete_with_symlink is a replacement for my_handler_delete_with_symlink.
mysql_file_rename_with_symlink
Defined in psi/mysql_file.h:477
Instrumented rename with symbolic link. mysql_file_rename_with_symlink is a replacement for my_rename_with_symlink.
mysql_file_sync
Defined in psi/mysql_file.h:490
Instrumented file sync. mysql_file_sync is a replacement for my_sync.
PSI_IDLE_CALL
Defined in psi/mysql_idle.h:35
MYSQL_START_IDLE_WAIT
Defined in psi/mysql_idle.h:56
Instrumentation helper for table io_waits. This instrumentation marks the start of a wait event. See also: MYSQL_END_IDLE_WAIT.
Parameters
LOCKER
the locker
STATE
the locker state
LOCKER
the locker
STATE
the locker state
MYSQL_END_IDLE_WAIT
Defined in psi/mysql_idle.h:71
Instrumentation helper for idle waits. This instrumentation marks the end of a wait event. See also: MYSQL_START_IDLE_WAIT.
Parameters
LOCKER
the locker
LOCKER
the locker
MYSQL_PLUGIN_AUTH_INCLUDED
Defined in plugin_auth.h:26
MYSQL_AUTHENTICATION_INTERFACE_VERSION
Defined in plugin_auth.h:30
PASSWORD_USED_NO
Defined in plugin_auth.h:40
PASSWORD_USED_YES
Defined in plugin_auth.h:41
PASSWORD_USED_NO_MENTION
Defined in plugin_auth.h:42
PSI_STAGE_CALL
Defined in psi/mysql_stage.h:34
mysql_stage_register
Defined in psi/mysql_stage.h:51
Stage registration.
MYSQL_SET_STAGE
Defined in psi/mysql_stage.h:69
Set the current stage. Use this API when the file and line is passed from the caller.
Returns
the current stage progress
Parameters
K
the stage key
F
the source file name
L
the source file line
K
the stage key
F
the source file name
L
the source file line
mysql_set_stage
Defined in psi/mysql_stage.h:83
Set the current stage.
Returns
the current stage progress
Parameters
K
the stage key
K
the stage key
mysql_end_stage
Defined in psi/mysql_stage.h:95
End the last stage
mysql_stage_set_work_completed
Defined in psi/mysql_stage.h:131
mysql_stage_get_work_completed
Defined in psi/mysql_stage.h:134
mysql_stage_inc_work_completed
Defined in psi/mysql_stage.h:142
mysql_stage_set_work_estimated
Defined in psi/mysql_stage.h:153
mysql_stage_get_work_estimated
Defined in psi/mysql_stage.h:156
PSI_TABLE_CALL
Defined in psi/mysql_table.h:35
MYSQL_UNBIND_TABLE
Defined in psi/mysql_table.h:55
PSI_CALL_unbind_table
Defined in psi/mysql_table.h:57
PSI_CALL_rebind_table
Defined in psi/mysql_table.h:58
PSI_CALL_close_table
Defined in psi/mysql_table.h:59
PSI_CALL_open_table
Defined in psi/mysql_table.h:60
PSI_CALL_get_table_share
Defined in psi/mysql_table.h:61
PSI_CALL_release_table_share
Defined in psi/mysql_table.h:62
PSI_CALL_drop_table_share
Defined in psi/mysql_table.h:63
MYSQL_TABLE_WAIT_VARIABLES
Defined in psi/mysql_table.h:83
Instrumentation helper for table waits. This instrumentation declares local variables. Do not use a ';' after this macro See also: MYSQL_START_TABLE_IO_WAIT.
See also: MYSQL_END_TABLE_IO_WAIT.
See also: MYSQL_START_TABLE_LOCK_WAIT.
See also: MYSQL_END_TABLE_LOCK_WAIT.
Parameters
LOCKER
the locker
STATE
the locker state
LOCKER
the locker
STATE
the locker state
MYSQL_START_TABLE_LOCK_WAIT
Defined in psi/mysql_table.h:102
Instrumentation helper for table lock waits. This instrumentation marks the start of a wait event. See also: MYSQL_END_TABLE_LOCK_WAIT.
Parameters
LOCKER
the locker
STATE
the locker state
PSI
the instrumented table
OP
the table operation to be performed
FLAGS
per table operation flags.
LOCKER
the locker
STATE
the locker state
PSI
the instrumented table
OP
the table operation to be performed
FLAGS
per table operation flags.
MYSQL_END_TABLE_LOCK_WAIT
Defined in psi/mysql_table.h:117
Instrumentation helper for table lock waits. This instrumentation marks the end of a wait event. See also: MYSQL_START_TABLE_LOCK_WAIT.
Parameters
LOCKER
the locker
LOCKER
the locker
MYSQL_UNLOCK_TABLE
Defined in psi/mysql_table.h:125
MY_GLOBAL_INCLUDED
Defined in psi/psi_abi_v0.h:29
USE_PSI_1
Defined in psi/psi_abi_v1.h:29
HAVE_PSI_INTERFACE
Defined in psi/psi_abi_v1.h:30
MY_GLOBAL_INCLUDED
Defined in psi/psi_abi_v1.h:31
USE_PSI_2
Defined in psi/psi_abi_v2.h:29
HAVE_PSI_INTERFACE
Defined in psi/psi_abi_v2.h:30
MY_GLOBAL_INCLUDED
Defined in psi/psi_abi_v2.h:31
MY_MD5_HASH_SIZE
Defined in service_md5.h:32
MYSQL_SERVICE_MD5_INCLUDED
Defined in service_md5.h:67
MYSQL_SERVICE_THD_INCLUDED
Defined in service_thd.h:45
MYSQL_AUDIT_CLASS_MASK_SIZE
Defined in plugin_audit.h:30
MYSQL_AUDIT_INTERFACE_VERSION
Defined in plugin_audit.h:32
MYSQL_AUDIT_GENERAL_CLASS
Defined in plugin_audit.h:45
MYSQL_AUDIT_GENERAL_CLASSMASK
Defined in plugin_audit.h:46
MYSQL_AUDIT_GENERAL_LOG
Defined in plugin_audit.h:47
MYSQL_AUDIT_GENERAL_ERROR
Defined in plugin_audit.h:48
MYSQL_AUDIT_GENERAL_RESULT
Defined in plugin_audit.h:49
MYSQL_AUDIT_GENERAL_STATUS
Defined in plugin_audit.h:50
MYSQL_AUDIT_GENERAL_WARNING
Defined in plugin_audit.h:51
MYSQL_AUDIT_CONNECTION_CLASS
Defined in plugin_audit.h:91
MYSQL_AUDIT_CONNECTION_CLASSMASK
Defined in plugin_audit.h:92
MYSQL_AUDIT_CONNECTION_CONNECT
Defined in plugin_audit.h:93
MYSQL_AUDIT_CONNECTION_DISCONNECT
Defined in plugin_audit.h:94
MYSQL_AUDIT_CONNECTION_CHANGE_USER
Defined in plugin_audit.h:95
MYSQL_AUDIT_TABLE_CLASS
Defined in plugin_audit.h:134
MYSQL_AUDIT_TABLE_CLASSMASK
Defined in plugin_audit.h:135
MYSQL_AUDIT_TABLE_LOCK
Defined in plugin_audit.h:136
MYSQL_AUDIT_TABLE_CREATE
Defined in plugin_audit.h:137
MYSQL_AUDIT_TABLE_DROP
Defined in plugin_audit.h:138
MYSQL_AUDIT_TABLE_RENAME
Defined in plugin_audit.h:139
MYSQL_AUDIT_TABLE_ALTER
Defined in plugin_audit.h:140
PSI_CALL_memory_alloc
Defined in psi/mysql_memory.h:39
PSI_CALL_memory_free
Defined in psi/mysql_memory.h:40
PSI_CALL_memory_realloc
Defined in psi/mysql_memory.h:41
PSI_CALL_register_memory
Defined in psi/mysql_memory.h:42
PSI_MEMORY_CALL
Defined in psi/mysql_memory.h:46
mysql_memory_register
Defined in psi/mysql_memory.h:59
Memory registration.
SOCKBUF_T
Defined in psi/mysql_socket.h:41
PSI_SOCKET_CALL
Defined in psi/mysql_socket.h:51
mysql_socket_register
Defined in psi/mysql_socket.h:65
Socket registration.
MYSQL_INVALID_SOCKET
Defined in psi/mysql_socket.h:107
MYSQL_SOCKET initial value.
MYSQL_SOCKET_WAIT_VARIABLES
Defined in psi/mysql_socket.h:202
Instrumentation helper for socket waits. This instrumentation declares local variables. Do not use a ';' after this macro See also: MYSQL_START_SOCKET_WAIT.
See also: MYSQL_END_SOCKET_WAIT.
Parameters
LOCKER
locker
STATE
locker state
LOCKER
locker
STATE
locker state
MYSQL_START_SOCKET_WAIT
Defined in psi/mysql_socket.h:221
Instrumentation helper for socket waits. This instrumentation marks the start of a wait event. See also: MYSQL_END_SOCKET_WAIT.
Parameters
LOCKER
locker
STATE
locker state
SOCKET
instrumented socket
OP
The socket operation to be performed
COUNT
bytes to be written/read
LOCKER
locker
STATE
locker state
SOCKET
instrumented socket
OP
The socket operation to be performed
COUNT
bytes to be written/read
MYSQL_END_SOCKET_WAIT
Defined in psi/mysql_socket.h:238
Instrumentation helper for socket waits. This instrumentation marks the end of a wait event. See also: MYSQL_START_SOCKET_WAIT.
Parameters
LOCKER
locker
COUNT
actual bytes written/read, or -1
LOCKER
locker
COUNT
actual bytes written/read, or -1
MYSQL_SOCKET_SET_STATE
Defined in psi/mysql_socket.h:253
Set the state (IDLE, ACTIVE) of an instrumented socket. See also: PSI_socket_state
Parameters
SOCKET
the instrumented socket
STATE
the new state
SOCKET
the instrumented socket
STATE
the new state
mysql_socket_fd
Defined in psi/mysql_socket.h:317
Create a socket. mysql_socket_fd is a replacement for socket.
Parameters
K
PSI_socket_key for this instrumented socket
F
File descriptor
K
PSI_socket_key for this instrumented socket
F
File descriptor
mysql_socket_socket
Defined in psi/mysql_socket.h:335
Create a socket. mysql_socket_socket is a replacement for socket.
Parameters
K
PSI_socket_key for this instrumented socket
D
Socket domain
T
Protocol type
P
Transport protocol
K
PSI_socket_key for this instrumented socket
D
Socket domain
T
Protocol type
P
Transport protocol
mysql_socket_bind
Defined in psi/mysql_socket.h:351
Bind a socket to a local port number and IP address mysql_socket_bind is a replacement for bind.
Parameters
FD
Instrumented socket descriptor returned by socket()
AP
Pointer to local port number and IP address in sockaddr structure
L
Length of sockaddr structure
FD
Instrumented socket descriptor returned by socket()
AP
Pointer to local port number and IP address in sockaddr structure
L
Length of sockaddr structure
mysql_socket_getsockname
Defined in psi/mysql_socket.h:367
Return port number and IP address of the local host mysql_socket_getsockname is a replacement for getsockname.
Parameters
FD
Instrumented socket descriptor returned by socket()
AP
Pointer to returned address of local host in sockaddr structure
LP
Pointer to length of sockaddr structure
FD
Instrumented socket descriptor returned by socket()
AP
Pointer to returned address of local host in sockaddr structure
LP
Pointer to length of sockaddr structure
mysql_socket_connect
Defined in psi/mysql_socket.h:383
Establish a connection to a remote host. mysql_socket_connect is a replacement for connect.
Parameters
FD
Instrumented socket descriptor returned by socket()
AP
Pointer to target address in sockaddr structure
L
Length of sockaddr structure
FD
Instrumented socket descriptor returned by socket()
AP
Pointer to target address in sockaddr structure
L
Length of sockaddr structure
mysql_socket_getpeername
Defined in psi/mysql_socket.h:399
Get port number and IP address of remote host that a socket is connected to. mysql_socket_getpeername is a replacement for getpeername.
Parameters
FD
Instrumented socket descriptor returned by socket() or accept()
AP
Pointer to returned address of remote host in sockaddr structure
LP
Pointer to length of sockaddr structure
FD
Instrumented socket descriptor returned by socket() or accept()
AP
Pointer to returned address of remote host in sockaddr structure
LP
Pointer to length of sockaddr structure
mysql_socket_send
Defined in psi/mysql_socket.h:416
Send data from the buffer, B, to a connected socket. mysql_socket_send is a replacement for send.
Parameters
FD
Instrumented socket descriptor returned by socket() or accept()
B
Buffer to send
N
Number of bytes to send
FL
Control flags
FD
Instrumented socket descriptor returned by socket() or accept()
B
Buffer to send
N
Number of bytes to send
FL
Control flags
mysql_socket_recv
Defined in psi/mysql_socket.h:433
Receive data from a connected socket. mysql_socket_recv is a replacement for recv.
Parameters
FD
Instrumented socket descriptor returned by socket() or accept()
B
Buffer to receive to
N
Maximum bytes to receive
FL
Control flags
FD
Instrumented socket descriptor returned by socket() or accept()
B
Buffer to receive to
N
Maximum bytes to receive
FL
Control flags
mysql_socket_sendto
Defined in psi/mysql_socket.h:452
Send data to a socket at the specified address. mysql_socket_sendto is a replacement for sendto.
Parameters
FD
Instrumented socket descriptor returned by socket()
B
Buffer to send
N
Number of bytes to send
FL
Control flags
AP
Pointer to destination sockaddr structure
L
Size of sockaddr structure
FD
Instrumented socket descriptor returned by socket()
B
Buffer to send
N
Number of bytes to send
FL
Control flags
AP
Pointer to destination sockaddr structure
L
Size of sockaddr structure
mysql_socket_recvfrom
Defined in psi/mysql_socket.h:471
Receive data from a socket and return source address information mysql_socket_recvfrom is a replacement for recvfrom.
Parameters
FD
Instrumented socket descriptor returned by socket()
B
Buffer to receive to
N
Maximum bytes to receive
FL
Control flags
AP
Pointer to source address in sockaddr_storage structure
LP
Size of sockaddr_storage structure
FD
Instrumented socket descriptor returned by socket()
B
Buffer to receive to
N
Maximum bytes to receive
FL
Control flags
AP
Pointer to source address in sockaddr_storage structure
LP
Size of sockaddr_storage structure
mysql_socket_getsockopt
Defined in psi/mysql_socket.h:489
Get a socket option for the specified socket. mysql_socket_getsockopt is a replacement for getsockopt.
Parameters
FD
Instrumented socket descriptor returned by socket()
LV
Protocol level
ON
Option to query
OP
Buffer which will contain the value for the requested option
OL
Pointer to length of OP
FD
Instrumented socket descriptor returned by socket()
LV
Protocol level
ON
Option to query
OP
Buffer which will contain the value for the requested option
OL
Pointer to length of OP
mysql_socket_setsockopt
Defined in psi/mysql_socket.h:507
Set a socket option for the specified socket. mysql_socket_setsockopt is a replacement for setsockopt.
Parameters
FD
Instrumented socket descriptor returned by socket()
LV
Protocol level
ON
Option to modify
OP
Buffer containing the value for the specified option
OL
Pointer to length of OP
FD
Instrumented socket descriptor returned by socket()
LV
Protocol level
ON
Option to modify
OP
Buffer containing the value for the specified option
OL
Pointer to length of OP
mysql_sock_set_nonblocking
Defined in psi/mysql_socket.h:520
Set socket to non-blocking.
Parameters
FD
instrumented socket descriptor
FD
instrumented socket descriptor
mysql_socket_listen
Defined in psi/mysql_socket.h:535
Set socket state to listen for an incoming connection. mysql_socket_listen is a replacement for listen.
Parameters
FD
Instrumented socket descriptor, bound and connected
N
Maximum number of pending connections allowed.
FD
Instrumented socket descriptor, bound and connected
N
Maximum number of pending connections allowed.
mysql_socket_accept
Defined in psi/mysql_socket.h:552
Accept a connection from any remote host; TCP only. mysql_socket_accept is a replacement for accept.
Parameters
K
PSI_socket_key for this instrumented socket
FD
Instrumented socket descriptor, bound and placed in a listen state
AP
Pointer to sockaddr structure with returned IP address and port of connected host
LP
Pointer to length of valid information in AP
K
PSI_socket_key for this instrumented socket
FD
Instrumented socket descriptor, bound and placed in a listen state
AP
Pointer to sockaddr structure with returned IP address and port of connected host
LP
Pointer to length of valid information in AP
mysql_socket_close
Defined in psi/mysql_socket.h:566
Close a socket and sever any connections. mysql_socket_close is a replacement for close.
Parameters
FD
Instrumented socket descriptor returned by socket() or accept()
FD
Instrumented socket descriptor returned by socket() or accept()
mysql_socket_shutdown
Defined in psi/mysql_socket.h:581
Disable receives and/or sends on a socket. mysql_socket_shutdown is a replacement for shutdown.
Parameters
FD
Instrumented socket descriptor returned by socket() or accept()
H
Specifies which operations to shutdown
FD
Instrumented socket descriptor returned by socket() or accept()
H
Specifies which operations to shutdown
PSI_MUTEX_CALL
Defined in psi/mysql_thread.h:73
PSI_RWLOCK_CALL
Defined in psi/mysql_thread.h:77
PSI_COND_CALL
Defined in psi/mysql_thread.h:81
PSI_THREAD_CALL
Defined in psi/mysql_thread.h:85
PSI_CALL_delete_current_thread
Defined in psi/mysql_thread.h:111
PSI_CALL_get_thread
Defined in psi/mysql_thread.h:112
PSI_CALL_new_thread
Defined in psi/mysql_thread.h:113
PSI_CALL_register_thread
Defined in psi/mysql_thread.h:114
PSI_CALL_set_thread
Defined in psi/mysql_thread.h:115
PSI_CALL_set_thread_THD
Defined in psi/mysql_thread.h:116
PSI_CALL_set_thread_connect_attrs
Defined in psi/mysql_thread.h:117
PSI_CALL_set_thread_db
Defined in psi/mysql_thread.h:118
PSI_CALL_set_thread_id
Defined in psi/mysql_thread.h:119
PSI_CALL_set_thread_os_id
Defined in psi/mysql_thread.h:120
PSI_CALL_set_thread_info
Defined in psi/mysql_thread.h:121
PSI_CALL_set_thread_start_time
Defined in psi/mysql_thread.h:122
PSI_CALL_set_thread_account
Defined in psi/mysql_thread.h:123
PSI_CALL_spawn_thread
Defined in psi/mysql_thread.h:124
PSI_CALL_set_connection_type
Defined in psi/mysql_thread.h:125
mysql_mutex_is_owner
Defined in psi/mysql_thread.h:266
mysql_mutex_assert_owner
Defined in psi/mysql_thread.h:273
Wrapper, to use safe_mutex_assert_owner with instrumented mutexes. mysql_mutex_assert_owner is a drop-in replacement for safe_mutex_assert_owner.
mysql_mutex_assert_not_owner
Defined in psi/mysql_thread.h:282
Wrapper, to use safe_mutex_assert_not_owner with instrumented mutexes. mysql_mutex_assert_not_owner is a drop-in replacement for safe_mutex_assert_not_owner.
mysql_mutex_setflags
Defined in psi/mysql_thread.h:285
mysql_prlock_assert_write_owner
Defined in psi/mysql_thread.h:293
Drop-in replacement for rw_pr_lock_assert_write_owner.
mysql_prlock_assert_not_write_owner
Defined in psi/mysql_thread.h:301
Drop-in replacement for rw_pr_lock_assert_not_write_owner.
mysql_mutex_register
Defined in psi/mysql_thread.h:308
Mutex registration.
mysql_mutex_init
Defined in psi/mysql_thread.h:333
Instrumented mutex_init. mysql_mutex_init is a replacement for pthread_mutex_init.
Parameters
K
The PSI_mutex_key for this instrumented mutex
M
The mutex to initialize
A
Mutex attributes
K
The PSI_mutex_key for this instrumented mutex
M
The mutex to initialize
A
Mutex attributes
mysql_mutex_destroy
Defined in psi/mysql_thread.h:348
Instrumented mutex_destroy. mysql_mutex_destroy is a drop-in replacement for pthread_mutex_destroy.
mysql_mutex_lock
Defined in psi/mysql_thread.h:363
Instrumented mutex_lock. mysql_mutex_lock is a drop-in replacement for pthread_mutex_lock.
Parameters
M
The mutex to lock
M
The mutex to lock
mysql_mutex_trylock
Defined in psi/mysql_thread.h:378
Instrumented mutex_lock. mysql_mutex_trylock is a drop-in replacement for pthread_mutex_trylock.
mysql_mutex_unlock
Defined in psi/mysql_thread.h:391
Instrumented mutex_unlock. mysql_mutex_unlock is a drop-in replacement for pthread_mutex_unlock.
mysql_rwlock_register
Defined in psi/mysql_thread.h:399
Rwlock registration.
mysql_rwlock_init
Defined in psi/mysql_thread.h:413
Instrumented rwlock_init. mysql_rwlock_init is a replacement for pthread_rwlock_init. Note that pthread_rwlockattr_t is not supported in MySQL.
Parameters
K
The PSI_rwlock_key for this instrumented rwlock
RW
The rwlock to initialize
K
The PSI_rwlock_key for this instrumented rwlock
RW
The rwlock to initialize
mysql_prlock_init
Defined in psi/mysql_thread.h:426
Instrumented rw_pr_init. mysql_prlock_init is a replacement for rw_pr_init.
Parameters
K
The PSI_rwlock_key for this instrumented prlock
RW
The prlock to initialize
K
The PSI_rwlock_key for this instrumented prlock
RW
The prlock to initialize
mysql_rwlock_destroy
Defined in psi/mysql_thread.h:435
Instrumented rwlock_destroy. mysql_rwlock_destroy is a drop-in replacement for pthread_rwlock_destroy.
mysql_prlock_destroy
Defined in psi/mysql_thread.h:443
Instrumented rw_pr_destroy. mysql_prlock_destroy is a drop-in replacement for rw_pr_destroy.
mysql_rwlock_rdlock
Defined in psi/mysql_thread.h:455
Instrumented rwlock_rdlock. mysql_rwlock_rdlock is a drop-in replacement for pthread_rwlock_rdlock.
mysql_prlock_rdlock
Defined in psi/mysql_thread.h:469
Instrumented rw_pr_rdlock. mysql_prlock_rdlock is a drop-in replacement for rw_pr_rdlock.
mysql_rwlock_wrlock
Defined in psi/mysql_thread.h:483
Instrumented rwlock_wrlock. mysql_rwlock_wrlock is a drop-in replacement for pthread_rwlock_wrlock.
mysql_prlock_wrlock
Defined in psi/mysql_thread.h:497
Instrumented rw_pr_wrlock. mysql_prlock_wrlock is a drop-in replacement for rw_pr_wrlock.
mysql_rwlock_tryrdlock
Defined in psi/mysql_thread.h:511
Instrumented rwlock_tryrdlock. mysql_rwlock_tryrdlock is a drop-in replacement for pthread_rwlock_tryrdlock.
mysql_rwlock_trywrlock
Defined in psi/mysql_thread.h:525
Instrumented rwlock_trywrlock. mysql_rwlock_trywrlock is a drop-in replacement for pthread_rwlock_trywrlock.
mysql_rwlock_unlock
Defined in psi/mysql_thread.h:535
Instrumented rwlock_unlock. mysql_rwlock_unlock is a drop-in replacement for pthread_rwlock_unlock.
mysql_prlock_unlock
Defined in psi/mysql_thread.h:543
Instrumented rw_pr_unlock. mysql_prlock_unlock is a drop-in replacement for rw_pr_unlock.
mysql_cond_register
Defined in psi/mysql_thread.h:549
Cond registration.
mysql_cond_init
Defined in psi/mysql_thread.h:563
Instrumented cond_init. mysql_cond_init is a replacement for pthread_cond_init.
Parameters
K
The PSI_cond_key for this instrumented cond
C
The cond to initialize
A
Condition attributes
K
The PSI_cond_key for this instrumented cond
C
The cond to initialize
A
Condition attributes
mysql_cond_destroy
Defined in psi/mysql_thread.h:571
Instrumented cond_destroy. mysql_cond_destroy is a drop-in replacement for pthread_cond_destroy.
mysql_cond_wait
Defined in psi/mysql_thread.h:582
Instrumented cond_wait. mysql_cond_wait is a drop-in replacement for pthread_cond_wait.
mysql_cond_timedwait
Defined in psi/mysql_thread.h:596
Instrumented cond_timedwait. mysql_cond_timedwait is a drop-in replacement for pthread_cond_timedwait.
mysql_cond_signal
Defined in psi/mysql_thread.h:605
Instrumented cond_signal. mysql_cond_signal is a drop-in replacement for pthread_cond_signal.
mysql_cond_broadcast
Defined in psi/mysql_thread.h:613
Instrumented cond_broadcast. mysql_cond_broadcast is a drop-in replacement for pthread_cond_broadcast.
mysql_thread_register
Defined in psi/mysql_thread.h:619
Thread registration.
mysql_thread_create
Defined in psi/mysql_thread.h:643
Instrumented pthread_create. This function creates both the thread instrumentation and a thread. mysql_thread_create is a replacement for pthread_create. The parameter P4 (or, if it is NULL, P1) will be used as the instrumented thread "identity". Providing a P1 / P4 parameter with a different value for each call will on average improve performances, since this thread identity value is used internally to randomize access to data and prevent contention. This is optional, and the improvement is not guaranteed, only statistical.
Parameters
K
The PSI_thread_key for this instrumented thread
P1
pthread_create parameter 1
P2
pthread_create parameter 2
P3
pthread_create parameter 3
P4
pthread_create parameter 4
K
The PSI_thread_key for this instrumented thread
P1
pthread_create parameter 1
P2
pthread_create parameter 2
P3
pthread_create parameter 3
P4
pthread_create parameter 4
mysql_thread_set_psi_id
Defined in psi/mysql_thread.h:655
Set the thread identifier for the instrumentation.
Parameters
I
The thread identifier
I
The thread identifier
mysql_thread_set_psi_THD
Defined in psi/mysql_thread.h:666
Set the thread sql session for the instrumentation.
Parameters
T
The thread identifier
T
The thread identifier
MY_SHA1_HASH_SIZE
Defined in service_sha1.h:32
MYSQL_SERVICE_SHA1_INCLUDED
Defined in service_sha1.h:67
MYSQL_SERVICE_SHA2_INCLUDED
Defined in service_sha2.h:128
MYSQL_CLIENT_PLUGIN_INCLUDED
Defined in client_plugin.h:25
MYSQL_PLUGIN_EXPORT_C
Defined in client_plugin.h:37
MYSQL_PLUGIN_EXPORT
Defined in client_plugin.h:44
C_MODE_START
Defined in client_plugin.h:45
C_MODE_END
Defined in client_plugin.h:46
MYSQL_CLIENT_reserved1
Defined in client_plugin.h:55
MYSQL_CLIENT_reserved2
Defined in client_plugin.h:56
MYSQL_CLIENT_AUTHENTICATION_PLUGIN
Defined in client_plugin.h:57
MYSQL_CLIENT_AUTHENTICATION_PLUGIN_INTERFACE_VERSION
Defined in client_plugin.h:59
MYSQL_CLIENT_MAX_PLUGINS
Defined in client_plugin.h:61
mysql_declare_client_plugin
Defined in client_plugin.h:63
mysql_end_client_plugin
Defined in client_plugin.h:69
MYSQL_CLIENT_PLUGIN_HEADER
Defined in client_plugin.h:72
WSREP_ASSERT_INNODB_TRX
Defined in service_wsrep.h:14
MYSQL_SERVICE_WSREP_INCLUDED
Defined in service_wsrep.h:107
MYSQL_SERVICE_WSREP_STATIC_INCLUDED
Defined in service_wsrep.h:158
MY_BASE64_DECODE_ALLOW_MULTIPLE_CHUNKS
Defined in service_base64.h:33
MYSQL_SERVICE_BASE64_INCLUDED
Defined in service_base64.h:81
MYSQL_FTPARSER_INTERFACE_VERSION
Defined in plugin_ftparser.h:29
MYSQL_FTFLAGS_NEED_COPY
Defined in plugin_ftparser.h:142
PSI_STATEMENT_CALL
Defined in psi/mysql_statement.h:38
PSI_DIGEST_CALL
Defined in psi/mysql_statement.h:42
mysql_statement_register
Defined in psi/mysql_statement.h:59
Statement registration.
MYSQL_DIGEST_START
Defined in psi/mysql_statement.h:67
MYSQL_DIGEST_END
Defined in psi/mysql_statement.h:75
MYSQL_START_STATEMENT
Defined in psi/mysql_statement.h:83
MYSQL_REFINE_STATEMENT
Defined in psi/mysql_statement.h:91
MYSQL_SET_STATEMENT_TEXT
Defined in psi/mysql_statement.h:99
MYSQL_SET_STATEMENT_LOCK_TIME
Defined in psi/mysql_statement.h:107
MYSQL_SET_STATEMENT_ROWS_SENT
Defined in psi/mysql_statement.h:115
MYSQL_SET_STATEMENT_ROWS_EXAMINED
Defined in psi/mysql_statement.h:123
MYSQL_END_STATEMENT
Defined in psi/mysql_statement.h:131
MYSQL_SERVICE_THD_RND_INCLUDED
Defined in service_thd_rnd.h:62
MYSQL_PLUGIN_ENCRYPTION_INCLUDED
Defined in plugin_encryption.h:26
MariaDB_ENCRYPTION_INTERFACE_VERSION
Defined in plugin_encryption.h:34
PSI_TRANSACTION_CALL
Defined in psi/mysql_transaction.h:34
MYSQL_START_TRANSACTION
Defined in psi/mysql_transaction.h:47
MYSQL_SET_TRANSACTION_GTID
Defined in psi/mysql_transaction.h:55
MYSQL_SET_TRANSACTION_XID
Defined in psi/mysql_transaction.h:63
MYSQL_SET_TRANSACTION_XA_STATE
Defined in psi/mysql_transaction.h:71
MYSQL_SET_TRANSACTION_TRXID
Defined in psi/mysql_transaction.h:79
MYSQL_INC_TRANSACTION_SAVEPOINTS
Defined in psi/mysql_transaction.h:87
MYSQL_INC_TRANSACTION_ROLLBACK_TO_SAVEPOINT
Defined in psi/mysql_transaction.h:95
MYSQL_INC_TRANSACTION_RELEASE_SAVEPOINT
Defined in psi/mysql_transaction.h:103
MYSQL_ROLLBACK_TRANSACTION
Defined in psi/mysql_transaction.h:111
MYSQL_COMMIT_TRANSACTION
Defined in psi/mysql_transaction.h:119
MY_AES_OK
Defined in service_my_crypt.h:37
MY_AES_BAD_DATA
Defined in service_my_crypt.h:38
MY_AES_OPENSSL_ERROR
Defined in service_my_crypt.h:39
MY_AES_BAD_KEYSIZE
Defined in service_my_crypt.h:40
MY_AES_BLOCK_SIZE
Defined in service_my_crypt.h:43
MY_AES_MAX_KEY_LENGTH
Defined in service_my_crypt.h:46
MY_AES_CTX_SIZE
Defined in service_my_crypt.h:48
ENCRYPTION_KEY_VERSION_INVALID
Defined in service_encryption.h:44
ENCRYPTION_KEY_NOT_ENCRYPTED
Defined in service_encryption.h:45
ENCRYPTION_KEY_SYSTEM_DATA
Defined in service_encryption.h:47
ENCRYPTION_KEY_TEMPORARY_DATA
Defined in service_encryption.h:48
ENCRYPTION_KEY_BUFFER_TOO_SMALL
Defined in service_encryption.h:51
ENCRYPTION_FLAG_DECRYPT
Defined in service_encryption.h:53
ENCRYPTION_FLAG_ENCRYPT
Defined in service_encryption.h:54
ENCRYPTION_FLAG_NOPAD
Defined in service_encryption.h:55
encryption_key_get_latest_version
Defined in service_encryption.h:87
encryption_key_get
Defined in service_encryption.h:88
encryption_ctx_size
Defined in service_encryption.h:89
encryption_ctx_init
Defined in service_encryption.h:90
encryption_ctx_update
Defined in service_encryption.h:91
encryption_ctx_finish
Defined in service_encryption.h:92
encryption_encrypted_length
Defined in service_encryption.h:93
MYSQL_SERVICE_ENCRYPTION_INCLUDED
Defined in service_encryption.h:145
MYSQL_SERVICE_THD_ALLOC_INCLUDED
Defined in service_thd_alloc.h:144
MYSQL_AUTH_DIALOG_CLIENT_INCLUDED
Defined in auth_dialog_client.h:25
ORDINARY_QUESTION
Defined in auth_dialog_client.h:51
first byte of the question string is the question "type". It can be an "ordinary" or a "password" question. The last bit set marks a last question in the authentication exchange.
LAST_QUESTION
Defined in auth_dialog_client.h:52
PASSWORD_QUESTION
Defined in auth_dialog_client.h:53
LAST_PASSWORD
Defined in auth_dialog_client.h:54
MYSQL_PLUGIN_AUTH_COMMON_INCLUDED
Defined in plugin_auth_common.h:28
MYSQL_USERNAME_LENGTH
Defined in plugin_auth_common.h:31
the max allowed length for a user name
CR_AUTH_PLUGIN_ERROR
Defined in plugin_auth_common.h:43
return values of the plugin authenticate_user() method. Authentication failed, plugin internal error. An error occurred in the authentication plugin itself. These errors are reported in table performance_schema.host_cache, column COUNT_AUTH_PLUGIN_ERRORS.
CR_AUTH_HANDSHAKE
Defined in plugin_auth_common.h:50
Authentication failed, client server handshake. An error occurred during the client server handshake. These errors are reported in table performance_schema.host_cache, column COUNT_HANDSHAKE_ERRORS.
CR_AUTH_USER_CREDENTIALS
Defined in plugin_auth_common.h:57
Authentication failed, user credentials. For example, wrong passwords. These errors are reported in table performance_schema.host_cache, column COUNT_AUTHENTICATION_ERRORS.
CR_ERROR
Defined in plugin_auth_common.h:68
Authentication failed. Additionally, all other CR_xxx values (libmysql error code) can be used too.
The client plugin may set the error code and the error message directly in the MYSQL structure and return CR_ERROR. If a CR_xxx specific error code was returned, an error message in the MYSQL structure will be overwritten. If CR_ERROR is returned without setting the error in MYSQL, CR_UNKNOWN_ERROR will be user.
CR_OK
Defined in plugin_auth_common.h:76
Authentication (client part) was successful. It does not mean that the authentication as a whole was successful, usually it only means that the client was able to send the user name and the password to the server. If CR_OK is returned, the libmysql reads the next packet expecting it to be one of OK, ERROR, or CHANGE_PLUGIN packets.
CR_OK_HANDSHAKE_COMPLETE
Defined in plugin_auth_common.h:91
Authentication was successful. It means that the client has done its part successfully and also that a plugin has read the last packet (one of OK, ERROR, CHANGE_PLUGIN). In this case, libmysql will not read a packet from the server, but it will use the data at mysql->net.read_pos.
A plugin may return this value if the number of roundtrips in the authentication protocol is not known in advance, and the client plugin needs to read one packet more to determine if the authentication is finished or not.
Server plugins should not return this value.
debug_sync_service
Defined in service_debug_sync.h:332
DEBUG_SYNC
Defined in service_debug_sync.h:349
DEBUG_SYNC_C_IF_THD
Defined in service_debug_sync.h:350
DEBUG_SYNC_C
Defined in service_debug_sync.h:357
MYSQL_SERVICE_DEBUG_SYNC_INCLUDED
Defined in service_debug_sync.h:364
MYSQL_SERVICE_MY_SNPRINTF_INCLUDED
Defined in service_my_snprintf.h:124
MYSQL_SERVICE_THD_AUTOINC_INCLUDED
Defined in service_thd_autoinc.h:52
MYSQL_SERVICE_THD_TIMEZONE_INCLUDED
Defined in service_thd_timezone.h:77
thd_key_create_from_var
Defined in service_thd_specifics.h:69
MYSQL_SERVICE_THD_SPECIFICS_INCLUDED
Defined in service_thd_specifics.h:108
thd_killed
Defined in service_kill_statement.h:53
ME_ERROR_LOG
Defined in service_my_print_error.h:36
ME_ERROR_LOG_ONLY
Defined in service_my_print_error.h:37
ME_NOTE
Defined in service_my_print_error.h:38
ME_WARNING
Defined in service_my_print_error.h:39
ME_FATAL
Defined in service_my_print_error.h:40
thd_proc_info
Defined in service_progress_report.h:32
MYSQL_SERVICE_PROGRESS_REPORT_INCLUDED
Defined in service_progress_report.h:80
ENCRYPTION_SCHEME_KEY_INVALID
Defined in service_encryption_scheme.h:74
ENCRYPTION_SCHEME_BLOCK_LENGTH
Defined in service_encryption_scheme.h:75
MYSQL_SERVICE_ENCRYPTION_SCHEME_INCLUDED
Defined in service_encryption_scheme.h:132
MYSQL_PLUGIN_PASSWORD_VALIDATION_INCLUDED
Defined in plugin_password_validation.h:25
MariaDB_PASSWORD_VALIDATION_INTERFACE_VERSION
Defined in plugin_password_validation.h:33
MYSQL_SERVICE_THD_STMT_DA_INCLUDED
Defined in service_thd_error_context.h:92
Enumerations
PSI_table_io_operation
Defined in psi/psi.h:241
IO operation performed on an instrumented table.
PSI_TABLE_FETCH_ROW
Row fetch.
PSI_TABLE_WRITE_ROW
Row write.
PSI_TABLE_UPDATE_ROW
Row update.
PSI_TABLE_DELETE_ROW
Row delete.
enum_mysql_show_type
Defined in plugin.h:187
SHOW_UNDEF
SHOW_BOOL
SHOW_UINT
SHOW_ULONG
SHOW_ULONGLONG
SHOW_CHAR
SHOW_CHAR_PTR
SHOW_ARRAY
SHOW_FUNC
SHOW_DOUBLE
SHOW_SINT
SHOW_SLONG
SHOW_SLONGLONG
SHOW_SIMPLE_FUNC
SHOW_SIZE_T
SHOW_always_last
enum_var_type
Defined in plugin.h:201
SHOW_OPT_DEFAULT
SHOW_OPT_SESSION
SHOW_OPT_GLOBAL
SHOW_OPT_SESSION_NO_LOCK
json_types
Defined in service_json.h:51
JSV_BAD_JSON
JSV_NOTHING
JSV_OBJECT
JSV_ARRAY
JSV_STRING
JSV_NUMBER
JSV_TRUE
JSV_FALSE
JSV_NULL
Wsrep_service_key_type
Defined in service_wsrep.h:4
WSREP_SERVICE_KEY_SHARED
WSREP_SERVICE_KEY_REFERENCE
WSREP_SERVICE_KEY_UPDATE
WSREP_SERVICE_KEY_EXCLUSIVE
enum_ftparser_mode
Defined in plugin_ftparser.h:32
MYSQL_FTPARSER_SIMPLE_MODE
MYSQL_FTPARSER_WITH_STOPWORDS
MYSQL_FTPARSER_FULL_BOOLEAN_INFO
enum_ft_token_type
Defined in plugin_ftparser.h:80
FT_TOKEN_EOF
FT_TOKEN_WORD
FT_TOKEN_LEFT_PAREN
FT_TOKEN_RIGHT_PAREN
FT_TOKEN_STOPWORD
my_aes_mode
Defined in service_my_crypt.h:50
MY_AES_ECB
MY_AES_CBC
my_digest
Defined in service_my_crypt.h:60
MY_DIGEST_SHA1
MY_DIGEST_SHA224
MY_DIGEST_SHA256
MY_DIGEST_SHA384
MY_DIGEST_SHA512
_thd_wait_type_e
Defined in service_thd_wait.h:66
THD_WAIT_SLEEP
THD_WAIT_DISKIO
THD_WAIT_ROW_LOCK
THD_WAIT_GLOBAL_LOCK
THD_WAIT_META_DATA_LOCK
THD_WAIT_TABLE_LOCK
THD_WAIT_USER_LOCK
THD_WAIT_BINLOG
THD_WAIT_GROUP_COMMIT
THD_WAIT_SYNC
THD_WAIT_NET
THD_WAIT_LAST
thd_kill_levels
Defined in service_kill_statement.h:42
THD_IS_NOT_KILLED
THD_ABORT_SOFTLY
abort when possible, don't leave tables corrupted
THD_ABORT_ASAP
abort asap
Typedefs
MDL_key
Type: struct MDL_key
Defined in psi/psi.h:70
opaque_mdl_type
Defined in psi/psi.h:73
See also: enum_mdl_type.
opaque_mdl_duration
Defined in psi/psi.h:76
See also: enum_mdl_duration.
opaque_mdl_status
Defined in psi/psi.h:79
See also: MDL_wait::enum_wait_status.
opaque_vio_type
Defined in psi/psi.h:82
See also: enum_vio_type.
THD
Type: struct opaque_THD
Defined in psi/psi.h:99
PSI_mutex
Type: struct PSI_mutex
Defined in psi/psi.h:115
PSI_rwlock
Type: struct PSI_rwlock
Defined in psi/psi.h:122
PSI_cond
Type: struct PSI_cond
Defined in psi/psi.h:129
PSI_table_share
Type: struct PSI_table_share
Defined in psi/psi.h:136
PSI_table
Type: struct PSI_table
Defined in psi/psi.h:143
PSI_thread
Type: struct PSI_thread
Defined in psi/psi.h:150
PSI_file
Type: struct PSI_file
Defined in psi/psi.h:157
PSI_socket
Type: struct PSI_socket
Defined in psi/psi.h:164
PSI_prepared_stmt
Type: struct PSI_prepared_stmt
Defined in psi/psi.h:171
PSI_table_locker
Type: struct PSI_table_locker
Defined in psi/psi.h:178
PSI_statement_locker
Type: struct PSI_statement_locker
Defined in psi/psi.h:185
PSI_transaction_locker
Type: struct PSI_transaction_locker
Defined in psi/psi.h:192
PSI_idle_locker
Type: struct PSI_idle_locker
Defined in psi/psi.h:199
PSI_digest_locker
Type: struct PSI_digest_locker
Defined in psi/psi.h:206
PSI_sp_share
Type: struct PSI_sp_share
Defined in psi/psi.h:213
PSI_sp_locker
Type: struct PSI_sp_locker
Defined in psi/psi.h:220
PSI_metadata_lock
Type: struct PSI_metadata_lock
Defined in psi/psi.h:227
PSI_stage_progress
Type: struct PSI_stage_progress
Defined in psi/psi.h:238
PSI_table_io_operation
Type: enum PSI_table_io_operation
Defined in psi/psi.h:252
PSI_table_locker_state
Type: struct PSI_table_locker_state
Defined in psi/psi.h:290
PSI_bootstrap
Type: struct PSI_bootstrap
Defined in psi/psi.h:310
PSI_mutex_key
Defined in psi/psi.h:792
Instrumented mutex key. To instrument a mutex, a mutex key must be obtained using register_mutex. Using a zero key always disable the instrumentation.
PSI_rwlock_key
Defined in psi/psi.h:800
Instrumented rwlock key. To instrument a rwlock, a rwlock key must be obtained using register_rwlock. Using a zero key always disable the instrumentation.
PSI_cond_key
Defined in psi/psi.h:808
Instrumented cond key. To instrument a condition, a condition key must be obtained using register_cond. Using a zero key always disable the instrumentation.
PSI_thread_key
Defined in psi/psi.h:816
Instrumented thread key. To instrument a thread, a thread key must be obtained using register_thread. Using a zero key always disable the instrumentation.
PSI_file_key
Defined in psi/psi.h:823
Instrumented file key. To instrument a file, a file key must be obtained using register_file. Using a zero key always disable the instrumentation.
PSI_stage_key
Defined in psi/psi.h:830
Instrumented stage key. To instrument a stage, a stage key must be obtained using register_stage. Using a zero key always disable the instrumentation.
PSI_statement_key
Defined in psi/psi.h:837
Instrumented statement key. To instrument a statement, a statement key must be obtained using register_statement. Using a zero key always disable the instrumentation.
PSI_socket_key
Defined in psi/psi.h:844
Instrumented socket key. To instrument a socket, a socket key must be obtained using register_socket. Using a zero key always disable the instrumentation.
PSI_mutex_info_v1
Type: struct PSI_mutex_info_v1
Defined in psi/psi.h:875
PSI_rwlock_info_v1
Type: struct PSI_rwlock_info_v1
Defined in psi/psi.h:898
PSI_cond_info_v1
Type: struct PSI_cond_info_v1
Defined in psi/psi.h:921
PSI_thread_info_v1
Type: struct PSI_thread_info_v1
Defined in psi/psi.h:944
PSI_file_info_v1
Type: struct PSI_file_info_v1
Defined in psi/psi.h:967
PSI_stage_info_v1
Type: struct PSI_stage_info_v1
Defined in psi/psi.h:983
PSI_statement_info_v1
Type: struct PSI_statement_info_v1
Defined in psi/psi.h:999
PSI_socket_info_v1
Type: struct PSI_socket_info_v1
Defined in psi/psi.h:1022
PSI_idle_locker_state_v1
Type: struct PSI_idle_locker_state_v1
Defined in psi/psi.h:1046
PSI_mutex_locker_state_v1
Type: struct PSI_mutex_locker_state_v1
Defined in psi/psi.h:1074
PSI_rwlock_locker_state_v1
Type: struct PSI_rwlock_locker_state_v1
Defined in psi/psi.h:1103
PSI_cond_locker_state_v1
Type: struct PSI_cond_locker_state_v1
Defined in psi/psi.h:1133
PSI_file_locker_state_v1
Type: struct PSI_file_locker_state_v1
Defined in psi/psi.h:1169
PSI_metadata_locker_state_v1
Type: struct PSI_metadata_locker_state_v1
Defined in psi/psi.h:1195
PSI_statement_locker_state_v1
Type: struct PSI_statement_locker_state_v1
Defined in psi/psi.h:1271
PSI_transaction_locker_state_v1
Type: struct PSI_transaction_locker_state_v1
Defined in psi/psi.h:1311
PSI_socket_locker_state_v1
Type: struct PSI_socket_locker_state_v1
Defined in psi/psi.h:1345
PSI_sp_locker_state_v1
Type: struct PSI_sp_locker_state_v1
Defined in psi/psi.h:1360
register_mutex_v1_t
Defined in psi/psi.h:1370
Mutex registration API.
Parameters
category
a category name (typically a plugin name)
info
an array of mutex info to register
count
the size of the info array
category
a category name (typically a plugin name)
info
an array of mutex info to register
count
the size of the info array
register_rwlock_v1_t
Defined in psi/psi.h:1379
Rwlock registration API.
Parameters
category
a category name (typically a plugin name)
info
an array of rwlock info to register
count
the size of the info array
category
a category name (typically a plugin name)
info
an array of rwlock info to register
count
the size of the info array
register_cond_v1_t
Defined in psi/psi.h:1388
Cond registration API.
Parameters
category
a category name (typically a plugin name)
info
an array of cond info to register
count
the size of the info array
category
a category name (typically a plugin name)
info
an array of cond info to register
count
the size of the info array
register_thread_v1_t
Defined in psi/psi.h:1397
Thread registration API.
Parameters
category
a category name (typically a plugin name)
info
an array of thread info to register
count
the size of the info array
category
a category name (typically a plugin name)
info
an array of thread info to register
count
the size of the info array
register_file_v1_t
Defined in psi/psi.h:1406
File registration API.
Parameters
category
a category name (typically a plugin name)
info
an array of file info to register
count
the size of the info array
category
a category name (typically a plugin name)
info
an array of file info to register
count
the size of the info array
register_stage_v1_t
Defined in psi/psi.h:1415
Stage registration API.
Parameters
category
a category name
info
an array of stage info to register
count
the size of the info array
category
a category name
info
an array of stage info to register
count
the size of the info array
register_statement_v1_t
Defined in psi/psi.h:1424
Statement registration API.
Parameters
category
a category name
info
an array of stage info to register
count
the size of the info array
category
a category name
info
an array of stage info to register
count
the size of the info array
register_socket_v1_t
Defined in psi/psi.h:1433
Socket registration API.
Parameters
category
a category name (typically a plugin name)
info
an array of socket info to register
count
the size of the info array
category
a category name (typically a plugin name)
info
an array of socket info to register
count
the size of the info array
init_mutex_v1_t
Defined in psi/psi.h:1433
Mutex instrumentation initialisation API.
Returns
an instrumented mutex
Parameters
key
the registered mutex key
identity
the address of the mutex itself
key
the registered mutex key
identity
the address of the mutex itself
destroy_mutex_v1_t
Defined in psi/psi.h:1449
Mutex instrumentation destruction API.
Parameters
mutex
the mutex to destroy
mutex
the mutex to destroy
init_rwlock_v1_t
Defined in psi/psi.h:1449
Rwlock instrumentation initialisation API.
Returns
an instrumented rwlock
Parameters
key
the registered rwlock key
identity
the address of the rwlock itself
key
the registered rwlock key
identity
the address of the rwlock itself
destroy_rwlock_v1_t
Defined in psi/psi.h:1464
Rwlock instrumentation destruction API.
Parameters
rwlock
the rwlock to destroy
rwlock
the rwlock to destroy
init_cond_v1_t
Defined in psi/psi.h:1464
Cond instrumentation initialisation API.
Returns
an instrumented cond
Parameters
key
the registered key
identity
the address of the rwlock itself
key
the registered key
identity
the address of the rwlock itself
destroy_cond_v1_t
Defined in psi/psi.h:1479
Cond instrumentation destruction API.
Parameters
cond
the rcond to destroy
cond
the rcond to destroy
init_socket_v1_t
Defined in psi/psi.h:1479
Socket instrumentation initialisation API.
Returns
an instrumented socket
Parameters
key
the registered socket key
fd
the socket descriptor
addr
the socket ip address
addr_len
length of socket ip address
key
the registered socket key
fd
the socket descriptor
addr
the socket ip address
addr_len
length of socket ip address
destroy_socket_v1_t
Defined in psi/psi.h:1497
socket instrumentation destruction API.
Parameters
socket
the socket to destroy
socket
the socket to destroy
get_table_share_v1_t
Defined in psi/psi.h:1497
Acquire a table share instrumentation.
Returns
a table share instrumentation, or NULL
Parameters
temporary
True for temporary tables
share
The SQL layer table share
temporary
True for temporary tables
share
The SQL layer table share
release_table_share_v1_t
Defined in psi/psi.h:1512
Release a table share.
Parameters
share
the table share to release
share
the table share to release
drop_table_share_v1_t
Defined in psi/psi.h:1522
Drop a table share.
Parameters
temporary
True for temporary tables
schema_name
the table schema name
schema_name_length
the table schema name length
table_name
the table name
table_name_length
the table name length
temporary
True for temporary tables
schema_name
the table schema name
schema_name_length
the table schema name length
table_name
the table name
table_name_length
the table name length
open_table_v1_t
Defined in psi/psi.h:1522
Open an instrumentation table handle.
Returns
a table handle, or NULL
Parameters
share
the table to open
identity
table handle identity
share
the table to open
identity
table handle identity
unbind_table_v1_t
Defined in psi/psi.h:1540
Unbind a table handle from the current thread. This operation happens when an opened table is added to the open table cache.
Parameters
table
the table to unbind
table
the table to unbind
rebind_table_v1_t
Defined in psi/psi.h:1548
Rebind a table handle to the current thread. This operation happens when a table from the open table cache is reused for a thread.
close_table_v1_t
Defined in psi/psi.h:1555
Close an instrumentation table handle. Note that the table handle is invalid after this call.
create_file_v1_t
Defined in psi/psi.h:1566
Create a file instrumentation for a created file. This method does not create the file itself, but is used to notify the instrumentation interface that a file was just created.
Parameters
key
the file instrumentation key for this file
name
the file name
file
the file handle
key
the file instrumentation key for this file
name
the file name
file
the file handle
spawn_thread_v1_t
Defined in psi/psi.h:1578
Spawn a thread. This method creates a new thread, with instrumentation.
Parameters
key
the instrumentation key for this thread
thread
the resulting thread
attr
the thread attributes
start_routine
the thread start routine
arg
the thread start routine argument
key
the instrumentation key for this thread
thread
the resulting thread
attr
the thread attributes
start_routine
the thread start routine
arg
the thread start routine argument
new_thread_v1_t
Defined in psi/psi.h:1578
Create instrumentation for a thread.
Returns
an instrumented thread
Parameters
key
the registered key
identity
an address typical of the thread
thread_id
the id of the thread
key
the registered key
identity
an address typical of the thread
thread_id
the id of the thread
set_thread_THD_v1_t
Defined in psi/psi.h:1598
Assign a THD to an instrumented thread.
Parameters
thread
the instrumented thread
thd
the sql layer THD to assign
thread
the instrumented thread
thd
the sql layer THD to assign
set_thread_id_v1_t
Defined in psi/psi.h:1606
Assign an id to an instrumented thread.
Parameters
thread
the instrumented thread
id
the id to assign
thread
the instrumented thread
id
the id to assign
set_thread_os_id_v1_t
Defined in psi/psi.h:1614
Assign the current operating system thread id to an instrumented thread. The operating system task id is obtained from gettid()
Parameters
thread
the instrumented thread
thread
the instrumented thread
get_thread_v1_t
Defined in psi/psi.h:1614
Get the instrumentation for the running thread. For this function to return a result, the thread instrumentation must have been attached to the running thread using set_thread()
Returns
the instrumentation for the running thread
get_thread_class_name_v1_t
Defined in psi/psi.h:1629
Get name of the thread, according to the thread class. The name is returns without the thread/subsystem prefix.
set_thread_user_v1_t
Defined in psi/psi.h:1636
Assign a user name to the instrumented thread.
Parameters
user
the user name
user_len
the user name length
user
the user name
user_len
the user name length
set_thread_account_v1_t
Defined in psi/psi.h:1645
Assign a user name and host name to the instrumented thread.
Parameters
user
the user name
user_len
the user name length
host
the host name
host_len
the host name length
user
the user name
user_len
the user name length
host
the host name
host_len
the host name length
set_thread_db_v1_t
Defined in psi/psi.h:1653
Assign a current database to the instrumented thread.
Parameters
db
the database name
db_len
the database name length
db
the database name
db_len
the database name length
set_thread_command_v1_t
Defined in psi/psi.h:1659
Assign a current command to the instrumented thread.
Parameters
command
the current command
command
the current command
set_connection_type_v1_t
Defined in psi/psi.h:1665
Assign a connection type to the instrumented thread.
Parameters
conn_type
the connection type
conn_type
the connection type
set_thread_start_time_v1_t
Defined in psi/psi.h:1672
Assign a start time to the instrumented thread.
Parameters
start_time
the thread start time
start_time
the thread start time
set_thread_state_v1_t
Defined in psi/psi.h:1678
Assign a state to the instrumented thread.
Parameters
state
the thread state
state
the thread state
set_thread_info_v1_t
Defined in psi/psi.h:1685
Assign a process info to the instrumented thread.
Parameters
info
the process into string
info_len
the process into string length
info
the process into string
info_len
the process into string length
set_thread_v1_t
Defined in psi/psi.h:1696
Attach a thread instrumentation to the running thread. In case of thread pools, this method should be called when a worker thread picks a work item and runs it. Also, this method should be called if the instrumented code does not keep the pointer returned by new_thread() and relies on get_thread() instead.
Parameters
thread
the thread instrumentation
thread
the thread instrumentation
set_thread_peer_port_v1_t
Defined in psi/psi.h:1704
Assign the remote (peer) port to the instrumented thread.
Parameters
thread
pointer to the thread instrumentation
port
the remote port
thread
pointer to the thread instrumentation
port
the remote port
delete_current_thread_v1_t
Defined in psi/psi.h:1708
Delete the current thread instrumentation.
delete_thread_v1_t
Defined in psi/psi.h:1711
Delete a thread instrumentation.
get_thread_file_name_locker_v1_t
Defined in psi/psi.h:1711
Get a file instrumentation locker, for opening or creating a file.
Returns
a file locker, or NULL
Parameters
state
data storage for the locker
key
the file instrumentation key
op
the operation to perform
name
the file name
identity
a pointer representative of this file.
state
data storage for the locker
key
the file instrumentation key
op
the operation to perform
name
the file name
identity
a pointer representative of this file.
get_thread_file_stream_locker_v1_t
Defined in psi/psi.h:1711
Get a file stream instrumentation locker.
Returns
a file locker, or NULL
Parameters
state
data storage for the locker
file
the file stream to access
op
the operation to perform
state
data storage for the locker
file
the file stream to access
op
the operation to perform
get_thread_file_descriptor_locker_v1_t
Defined in psi/psi.h:1711
Get a file instrumentation locker.
Returns
a file locker, or NULL
Parameters
state
data storage for the locker
file
the file descriptor to access
op
the operation to perform
state
data storage for the locker
file
the file descriptor to access
op
the operation to perform
unlock_mutex_v1_t
Defined in psi/psi.h:1753
Record a mutex instrumentation unlock event.
Parameters
mutex
the mutex instrumentation
mutex
the mutex instrumentation
unlock_rwlock_v1_t
Defined in psi/psi.h:1760
Record a rwlock instrumentation unlock event.
Parameters
rwlock
the rwlock instrumentation
rwlock
the rwlock instrumentation
signal_cond_v1_t
Defined in psi/psi.h:1767
Record a condition instrumentation signal event.
Parameters
cond
the cond instrumentation
cond
the cond instrumentation
broadcast_cond_v1_t
Defined in psi/psi.h:1774
Record a condition instrumentation broadcast event.
Parameters
cond
the cond instrumentation
cond
the cond instrumentation
start_idle_wait_v1_t
Defined in psi/psi.h:1774
Record an idle instrumentation wait start event.
Returns
an idle locker, or NULL
Parameters
state
data storage for the locker
src_file
the source file name
src_line
the source line number
state
data storage for the locker
src_file
the source file name
src_line
the source line number
end_idle_wait_v1_t
Defined in psi/psi.h:1791
Record an idle instrumentation wait end event.
Parameters
locker
a thread locker for the running thread
locker
a thread locker for the running thread
start_mutex_wait_v1_t
Defined in psi/psi.h:1791
Record a mutex instrumentation wait start event.
Returns
a mutex locker, or NULL
Parameters
state
data storage for the locker
mutex
the instrumented mutex to lock
op
the operation to perform
src_file
the source file name
src_line
the source line number
state
data storage for the locker
mutex
the instrumented mutex to lock
op
the operation to perform
src_file
the source file name
src_line
the source line number
end_mutex_wait_v1_t
Defined in psi/psi.h:1814
Record a mutex instrumentation wait end event.
Parameters
locker
a thread locker for the running thread
rc
the wait operation return code
locker
a thread locker for the running thread
rc
the wait operation return code
start_rwlock_rdwait_v1_t
Defined in psi/psi.h:1814
Record a rwlock instrumentation read wait start event.
end_rwlock_rdwait_v1_t
Defined in psi/psi.h:1831
Record a rwlock instrumentation read wait end event.
Parameters
locker
a thread locker for the running thread
rc
the wait operation return code
locker
a thread locker for the running thread
rc
the wait operation return code
start_rwlock_wrwait_v1_t
Defined in psi/psi.h:1831
Record a rwlock instrumentation write wait start event.
end_rwlock_wrwait_v1_t
Defined in psi/psi.h:1848
Record a rwlock instrumentation write wait end event.
Parameters
locker
a thread locker for the running thread
rc
the wait operation return code
locker
a thread locker for the running thread
rc
the wait operation return code
start_cond_wait_v1_t
Defined in psi/psi.h:1848
Record a condition instrumentation wait start event.
end_cond_wait_v1_t
Defined in psi/psi.h:1866
Record a condition instrumentation wait end event.
Parameters
locker
a thread locker for the running thread
rc
the wait operation return code
locker
a thread locker for the running thread
rc
the wait operation return code
start_table_io_wait_v1_t
Defined in psi/psi.h:1866
Record a table instrumentation io wait start event.
Parameters
state
data storage for the locker
table
the instrumented table to lock
op
the operation to perform
index
the index number to lock, or 0 if not applicable
src_file
the source file name
src_line
the source line number
state
data storage for the locker
table
the instrumented table to lock
op
the operation to perform
index
the index number to lock, or 0 if not applicable
src_file
the source file name
src_line
the source line number
end_table_io_wait_v1_t
Defined in psi/psi.h:1890
Record a table instrumentation io wait end event.
Parameters
locker
a table locker for the running thread
numrows
the number of rows involved in io
locker
a table locker for the running thread
numrows
the number of rows involved in io
start_table_lock_wait_v1_t
Defined in psi/psi.h:1890
Record a table instrumentation lock wait start event.
end_table_lock_wait_v1_t
Defined in psi/psi.h:1908
Record a table instrumentation lock wait end event.
Parameters
locker
a table locker for the running thread
locker
a table locker for the running thread
unlock_table_v1_t
Defined in psi/psi.h:1910
start_file_open_wait_v1_t
Defined in psi/psi.h:1918
Start a file instrumentation open operation.
Parameters
locker
the file locker
src_file
the source file name
src_line
the source line number
locker
the file locker
src_file
the source file name
src_line
the source line number
end_file_open_wait_v1_t
Defined in psi/psi.h:1918
End a file instrumentation open operation, for file streams.
Returns
an instrumented file handle
Parameters
locker
the file locker.
result
the opened file (NULL indicates failure, non NULL success).
locker
the file locker.
result
the opened file (NULL indicates failure, non NULL success).
end_file_open_wait_and_bind_to_descriptor_v1_t
Defined in psi/psi.h:1935
End a file instrumentation open operation, for non stream files.
Parameters
locker
the file locker.
file
the file number assigned by open() or create() for this file.
locker
the file locker.
file
the file number assigned by open() or create() for this file.
end_temp_file_open_wait_and_bind_to_descriptor_v1_t
Defined in psi/psi.h:1944
End a file instrumentation open operation, for non stream temporary files.
Parameters
locker
the file locker.
file
the file number assigned by open() or create() for this file.
filename
the file name generated during temporary file creation.
locker
the file locker.
file
the file number assigned by open() or create() for this file.
filename
the file name generated during temporary file creation.
start_file_wait_v1_t
Defined in psi/psi.h:1954
Record a file instrumentation start event.
Parameters
locker
a file locker for the running thread
count
the number of bytes requested, or 0 if not applicable
src_file
the source file name
src_line
the source line number
locker
a file locker for the running thread
count
the number of bytes requested, or 0 if not applicable
src_file
the source file name
src_line
the source line number
end_file_wait_v1_t
Defined in psi/psi.h:1970
Record a file instrumentation end event. Note that for file close operations, the instrumented file handle associated with the file (which was provided to obtain a locker) is invalid after this call. See also: get_thread_file_name_locker
See also: get_thread_file_stream_locker
See also: get_thread_file_descriptor_locker
Parameters
locker
a file locker for the running thread
count
the number of bytes actually used in the operation, or 0 if not applicable, or -1 if the operation failed
locker
a file locker for the running thread
count
the number of bytes actually used in the operation, or 0 if not applicable, or -1 if the operation failed
start_file_close_wait_v1_t
Defined in psi/psi.h:1979
Start a file instrumentation close operation.
Parameters
locker
the file locker
src_file
the source file name
src_line
the source line number
locker
the file locker
src_file
the source file name
src_line
the source line number
end_file_close_wait_v1_t
Defined in psi/psi.h:1988
End a file instrumentation close operation.
Returns
an instrumented file handle
Parameters
locker
the file locker.
rc
the close operation return code (0 for success).
locker
the file locker.
rc
the close operation return code (0 for success).
end_file_rename_wait_v1_t
Defined in psi/psi.h:1998
Rename a file instrumentation close operation.
Parameters
locker
the file locker.
old_name
name of the file to be renamed.
new_name
name of the file after rename.
rc
the rename operation return code (0 for success).
locker
the file locker.
old_name
name of the file to be renamed.
new_name
name of the file after rename.
rc
the rename operation return code (0 for success).
start_stage_v1_t
Defined in psi/psi.h:2009
Start a new stage, and implicitly end the previous stage.
Returns
the new stage progress
Parameters
key
the key of the new stage
src_file
the source file name
src_line
the source line number
key
the key of the new stage
src_file
the source file name
src_line
the source line number
get_current_stage_progress_v1_t
Defined in psi/psi.h:2012
end_stage_v1_t
Defined in psi/psi.h:2015
End the current stage.
get_thread_statement_locker_v1_t
Defined in psi/psi.h:2015
Get a statement instrumentation locker.
Returns
a statement locker, or NULL
Parameters
state
data storage for the locker
key
the statement instrumentation key
charset
client character set
sp_share
the share
state
data storage for the locker
key
the statement instrumentation key
charset
client character set
sp_share
the share
refine_statement_v1_t
Defined in psi/psi.h:2015
Refine a statement locker to a more specific key. Note that only events declared mutable can be refined. See also: PSI_FLAG_MUTABLE
Parameters
locker
statement locker for the current event
key
the new key for the event
locker
statement locker for the current event
key
the new key for the event
start_statement_v1_t
Defined in psi/psi.h:2048
Start a new statement event.
Parameters
locker
the statement locker for this event
db
the active database name for this statement
db_length
the active database name length for this statement
src_file
source file name
src_line
source line number
locker
the statement locker for this event
db
the active database name for this statement
db_length
the active database name length for this statement
src_file
source file name
src_line
source line number
set_statement_text_v1_t
Defined in psi/psi.h:2059
Set the statement text for a statement event.
Parameters
locker
the current statement locker
text
the statement text
text_len
the statement text length
locker
the current statement locker
text
the statement text
text_len
the statement text length
set_statement_lock_time_t
Defined in psi/psi.h:2068
Set a statement event lock time.
Parameters
locker
the statement locker
lock_time
the locked time, in microseconds
locker
the statement locker
lock_time
the locked time, in microseconds
set_statement_rows_sent_t
Defined in psi/psi.h:2076
Set a statement event rows sent metric.
Parameters
locker
the statement locker
count
the number of rows sent
locker
the statement locker
count
the number of rows sent
set_statement_rows_examined_t
Defined in psi/psi.h:2084
Set a statement event rows examined metric.
Parameters
locker
the statement locker
count
the number of rows examined
locker
the statement locker
count
the number of rows examined
inc_statement_created_tmp_disk_tables_t
Defined in psi/psi.h:2092
Increment a statement event "created tmp disk tables" metric.
Parameters
locker
the statement locker
count
the metric increment value
locker
the statement locker
count
the metric increment value
inc_statement_created_tmp_tables_t
Defined in psi/psi.h:2100
Increment a statement event "created tmp tables" metric.
Parameters
locker
the statement locker
count
the metric increment value
locker
the statement locker
count
the metric increment value
inc_statement_select_full_join_t
Defined in psi/psi.h:2108
Increment a statement event "select full join" metric.
Parameters
locker
the statement locker
count
the metric increment value
locker
the statement locker
count
the metric increment value
inc_statement_select_full_range_join_t
Defined in psi/psi.h:2116
Increment a statement event "select full range join" metric.
Parameters
locker
the statement locker
count
the metric increment value
locker
the statement locker
count
the metric increment value
inc_statement_select_range_t
Defined in psi/psi.h:2124
Increment a statement event "select range join" metric.
Parameters
locker
the statement locker
count
the metric increment value
locker
the statement locker
count
the metric increment value
inc_statement_select_range_check_t
Defined in psi/psi.h:2132
Increment a statement event "select range check" metric.
Parameters
locker
the statement locker
count
the metric increment value
locker
the statement locker
count
the metric increment value
inc_statement_select_scan_t
Defined in psi/psi.h:2140
Increment a statement event "select scan" metric.
Parameters
locker
the statement locker
count
the metric increment value
locker
the statement locker
count
the metric increment value
inc_statement_sort_merge_passes_t
Defined in psi/psi.h:2148
Increment a statement event "sort merge passes" metric.
Parameters
locker
the statement locker
count
the metric increment value
locker
the statement locker
count
the metric increment value
inc_statement_sort_range_t
Defined in psi/psi.h:2156
Increment a statement event "sort range" metric.
Parameters
locker
the statement locker
count
the metric increment value
locker
the statement locker
count
the metric increment value
inc_statement_sort_rows_t
Defined in psi/psi.h:2164
Increment a statement event "sort rows" metric.
Parameters
locker
the statement locker
count
the metric increment value
locker
the statement locker
count
the metric increment value
inc_statement_sort_scan_t
Defined in psi/psi.h:2172
Increment a statement event "sort scan" metric.
Parameters
locker
the statement locker
count
the metric increment value
locker
the statement locker
count
the metric increment value
set_statement_no_index_used_t
Defined in psi/psi.h:2179
Set a statement event "no index used" metric.
Parameters
locker
the statement locker
locker
the statement locker
set_statement_no_good_index_used_t
Defined in psi/psi.h:2186
Set a statement event "no good index used" metric.
Parameters
locker
the statement locker
locker
the statement locker
end_statement_v1_t
Defined in psi/psi.h:2195
End a statement event. See also: Diagnostics_area
Parameters
locker
the statement locker
stmt_da
the statement diagnostics area.
locker
the statement locker
stmt_da
the statement diagnostics area.
get_thread_transaction_locker_v1_t
Defined in psi/psi.h:2195
Get a transaction instrumentation locker.
Returns
a transaction locker, or NULL
Parameters
state
data storage for the locker
xid
the xid for this transaction
trxid
the InnoDB transaction id
isolation_level
isolation level for this transaction
read_only
true if transaction access mode is read-only
autocommit
true if transaction is autocommit
state
data storage for the locker
xid
the xid for this transaction
trxid
the InnoDB transaction id
isolation_level
isolation level for this transaction
read_only
true if transaction access mode is read-only
autocommit
true if transaction is autocommit
start_transaction_v1_t
Defined in psi/psi.h:2219
Start a new transaction event.
Parameters
locker
the transaction locker for this event
src_file
source file name
src_line
source line number
locker
the transaction locker for this event
src_file
source file name
src_line
source line number
set_transaction_xid_v1_t
Defined in psi/psi.h:2229
Set the transaction xid.
Parameters
locker
the transaction locker for this event
xid
the id of the XA transaction
xa_state
is the state of the XA transaction
locker
the transaction locker for this event
xid
the id of the XA transaction
xa_state
is the state of the XA transaction
set_transaction_xa_state_v1_t
Defined in psi/psi.h:2238
Set the state of the XA transaction.
Parameters
locker
the transaction locker for this event
xa_state
the new state of the xa transaction
locker
the transaction locker for this event
xa_state
the new state of the xa transaction
set_transaction_gtid_v1_t
Defined in psi/psi.h:2248
Set the transaction gtid.
Parameters
locker
the transaction locker for this event
sid
the source id for the transaction, mapped from sidno
gtid_spec
the gtid specifier for the transaction
locker
the transaction locker for this event
sid
the source id for the transaction, mapped from sidno
gtid_spec
the gtid specifier for the transaction
set_transaction_trxid_v1_t
Defined in psi/psi.h:2257
Set the transaction trx_id.
Parameters
locker
the transaction locker for this event
trxid
the storage engine transaction ID
locker
the transaction locker for this event
trxid
the storage engine transaction ID
inc_transaction_savepoints_v1_t
Defined in psi/psi.h:2266
Increment a transaction event savepoint count.
Parameters
locker
the transaction locker
count
the increment value
locker
the transaction locker
count
the increment value
inc_transaction_rollback_to_savepoint_v1_t
Defined in psi/psi.h:2274
Increment a transaction event rollback to savepoint count.
Parameters
locker
the transaction locker
count
the increment value
locker
the transaction locker
count
the increment value
inc_transaction_release_savepoint_v1_t
Defined in psi/psi.h:2282
Increment a transaction event release savepoint count.
Parameters
locker
the transaction locker
count
the increment value
locker
the transaction locker
count
the increment value
end_transaction_v1_t
Defined in psi/psi.h:2290
Commit or rollback the transaction.
Parameters
locker
the transaction locker for this event
commit
true if transaction was committed, false if rolled back
locker
the transaction locker for this event
commit
true if transaction was committed, false if rolled back
start_socket_wait_v1_t
Defined in psi/psi.h:2290
Record a socket instrumentation start event.
Parameters
state
locker state for the running thread
socket
the instrumented socket
op
socket operation to be performed
count
the number of bytes requested, or 0 if not applicable
src_file
the source file name
src_line
the source line number
state
locker state for the running thread
socket
the instrumented socket
op
socket operation to be performed
count
the number of bytes requested, or 0 if not applicable
src_file
the source file name
src_line
the source line number
end_socket_wait_v1_t
Defined in psi/psi.h:2320
Record a socket instrumentation end event. Note that for socket close operations, the instrumented socket handle associated with the socket (which was provided to obtain a locker) is invalid after this call. See also: get_thread_socket_locker
Parameters
locker
a socket locker for the running thread
count
the number of bytes actually used in the operation, or 0 if not applicable, or -1 if the operation failed
locker
a socket locker for the running thread
count
the number of bytes actually used in the operation, or 0 if not applicable, or -1 if the operation failed
set_socket_state_v1_t
Defined in psi/psi.h:2328
Set the socket state for an instrumented socket.
Parameters
socket
the instrumented socket
state
socket state
socket
the instrumented socket
state
socket state
set_socket_info_v1_t
Defined in psi/psi.h:2338
Set the socket info for an instrumented socket.
Parameters
socket
the instrumented socket
fd
the socket descriptor
addr
the socket ip address
addr_len
length of socket ip address
socket
the instrumented socket
fd
the socket descriptor
addr
the socket ip address
addr_len
length of socket ip address
set_socket_thread_owner_v1_t
Defined in psi/psi.h:2347
Bind a socket to the thread that owns it.
Parameters
socket
instrumented socket
socket
instrumented socket
create_prepared_stmt_v1_t
Defined in psi/psi.h:2352
Get a prepare statement.
destroy_prepared_stmt_v1_t
Defined in psi/psi.h:2360
destroy a prepare statement.
Parameters
prepared_stmt
prepared statement.
prepared_stmt
prepared statement.
reprepare_prepared_stmt_v1_t
Defined in psi/psi.h:2367
reprepare a prepare statement.
Parameters
prepared_stmt
prepared statement.
prepared_stmt
prepared statement.
execute_prepared_stmt_v1_t
Defined in psi/psi.h:2375
Record a prepare statement instrumentation execute event.
Parameters
locker
a statement locker for the running thread.
prepared_stmt
prepared statement.
locker
a statement locker for the running thread.
prepared_stmt
prepared statement.
set_prepared_stmt_text_v1_t
Defined in psi/psi.h:2384
Set the statement text for a prepared statement event.
Parameters
prepared_stmt
prepared statement.
text
the prepared statement text
text_len
the prepared statement text length
prepared_stmt
prepared statement.
text
the prepared statement text
text_len
the prepared statement text length
digest_start_v1_t
Defined in psi/psi.h:2384
Get a digest locker for the current statement.
Parameters
locker
a statement locker for the running thread
locker
a statement locker for the running thread
digest_end_v1_t
Defined in psi/psi.h:2399
Add a token to the current digest instrumentation.
Parameters
locker
a digest locker for the current statement
digest
The digest storage to add the token to
locker
a digest locker for the current statement
digest
The digest storage to add the token to
start_sp_v1_t
Defined in psi/psi.h:2402
end_sp_v1_t
Defined in psi/psi.h:2405
drop_sp_v1_t
Defined in psi/psi.h:2408
get_sp_share_v1_t
Defined in psi/psi.h:2408
Acquire a sp share instrumentation.
Returns
a stored program share instrumentation, or NULL
Parameters
object_type
of stored program
schema_name
of stored program
schema_name_length
of stored program
object_name
of stored program
object_name_length
of stored program
object_type
of stored program
schema_name
of stored program
schema_name_length
of stored program
object_name
of stored program
object_name_length
of stored program
release_sp_share_v1_t
Defined in psi/psi.h:2431
Release a stored program share.
Parameters
share
the stored program share to release
share
the stored program share to release
create_metadata_lock_v1_t
Defined in psi/psi.h:2433
set_metadata_lock_status_v1_t
Defined in psi/psi.h:2442
destroy_metadata_lock_v1_t
Defined in psi/psi.h:2445
start_metadata_wait_v1_t
Defined in psi/psi.h:2445
end_metadata_wait_v1_t
Defined in psi/psi.h:2452
set_thread_connect_attrs_v1_t
Defined in psi/psi.h:2465
Stores an array of connection attributes
Returns
state
Parameters
buffer
char array of length encoded connection attributes in network format
length
length of the data in buffer
from_cs
charset in which buffer is encoded
buffer
char array of length encoded connection attributes in network format
length
length of the data in buffer
from_cs
charset in which buffer is encoded
Return Values
non_0
attributes truncated
0
stored the attribute
PSI
Type: struct PSI_v1
Defined in psi/psi.h:2930
The instrumentation interface for the current version. See also: PSI_CURRENT_VERSION
PSI_mutex_info
Type: struct PSI_mutex_info_v1
Defined in psi/psi.h:2931
The mutex information structure for the current version.
PSI_rwlock_info
Type: struct PSI_rwlock_info_v1
Defined in psi/psi.h:2932
The rwlock information structure for the current version.
PSI_cond_info
Type: struct PSI_cond_info_v1
Defined in psi/psi.h:2933
The cond information structure for the current version.
PSI_thread_info
Type: struct PSI_thread_info_v1
Defined in psi/psi.h:2934
The thread information structure for the current version.
PSI_file_info
Type: struct PSI_file_info_v1
Defined in psi/psi.h:2935
The file information structure for the current version.
PSI_stage_info
Type: struct PSI_stage_info_v1
Defined in psi/psi.h:2936
The stage instrumentation has to co exist with the legacy THD::set_proc_info instrumentation. To avoid duplication of the instrumentation in the server, the common PSI_stage_info structure is used, so we export it here, even when not building with HAVE_PSI_INTERFACE.
PSI_statement_info
Type: struct PSI_statement_info_v1
Defined in psi/psi.h:2937
PSI_transaction_info
Defined in psi/psi.h:2938
PSI_socket_info
Type: struct PSI_socket_info_v1
Defined in psi/psi.h:2939
PSI_idle_locker_state
Type: struct PSI_idle_locker_state_v1
Defined in psi/psi.h:2940
PSI_mutex_locker_state
Type: struct PSI_mutex_locker_state_v1
Defined in psi/psi.h:2941
PSI_rwlock_locker_state
Type: struct PSI_rwlock_locker_state_v1
Defined in psi/psi.h:2942
PSI_cond_locker_state
Type: struct PSI_cond_locker_state_v1
Defined in psi/psi.h:2943
PSI_file_locker_state
Type: struct PSI_file_locker_state_v1
Defined in psi/psi.h:2944
PSI_statement_locker_state
Type: struct PSI_statement_locker_state_v1
Defined in psi/psi.h:2945
PSI_transaction_locker_state
Type: struct PSI_transaction_locker_state_v1
Defined in psi/psi.h:2946
PSI_socket_locker_state
Type: struct PSI_socket_locker_state_v1
Defined in psi/psi.h:2947
PSI_sp_locker_state
Type: struct PSI_sp_locker_state_v1
Defined in psi/psi.h:2948
PSI_metadata_locker_state
Type: struct PSI_metadata_locker_state_v1
Defined in psi/psi.h:2949
PSI_metadata_locker
Type: struct PSI_stage_info_none
Defined in psi/psi.h:3015
MYSQL_THD
Type: struct THD *
Defined in plugin.h:54
my_bool
Defined in plugin.h:57
MYSQL_PLUGIN
Defined in plugin.h:58
MYSQL_XID
Type: struct st_mysql_xid
Defined in plugin.h:77
mysql_show_var_func
Defined in plugin.h:215
mysql_var_check_func
Defined in plugin.h:284
SYNOPSIS (*mysql_var_check_func)() thd thread handle var dynamic variable being altered save pointer to temporary storage value user provided value RETURN 0 user provided value is OK and the update func may be called. any other value indicates error.
This function should parse the user provided value and store in the provided temporary storage any data as required by the update func. There is sufficient space in the temporary storage to store a double. Note that the update func may not be called if any other error occurs so any memory allocated should be thread-local so that it may be freed automatically at the end of the statement.
mysql_var_update_func
Defined in plugin.h:302
SYNOPSIS (*mysql_var_update_func)() thd thread handle var dynamic variable being altered var_ptr pointer to dynamic variable save pointer to temporary storage RETURN NONE
This function should use the validated value stored in the temporary store and persist it in the provided pointer to the dynamic variable. For example, strings may require memory to be allocated.
PSI_memory_key
Defined in psi/psi_base.h:177
Instrumented memory key. To instrument memory, a memory key must be obtained using register_memory. Using a zero key always disable the instrumentation.
MYSQL_FILE
Type: struct st_mysql_file
Defined in psi/mysql_file.h:515
Type of an instrumented file. MYSQL_FILE is a drop-in replacement for FILE. See also: mysql_file_open
PSI_memory_info_v1
Type: struct PSI_memory_info_v1
Defined in psi/psi_memory.h:80
register_memory_v1_t
Defined in psi/psi_memory.h:88
Memory registration API.
Parameters
category
a category name (typically a plugin name)
info
an array of memory info to register
count
the size of the info array
category
a category name (typically a plugin name)
info
an array of memory info to register
count
the size of the info array
memory_alloc_v1_t
Defined in psi/psi_memory.h:98
Instrument memory allocation.
Returns
the effective memory instrument key
Parameters
key
the memory instrument key
size
the size of memory allocated
owner
the memory owner
key
the memory instrument key
size
the size of memory allocated
owner
the memory owner
memory_realloc_v1_t
Defined in psi/psi_memory.h:109
Instrument memory re allocation.
Returns
the effective memory instrument key
Parameters
key
the memory instrument key
old_size
the size of memory previously allocated
new_size
the size of memory re allocated
owner
the memory owner
key
the memory instrument key
old_size
the size of memory previously allocated
new_size
the size of memory re allocated
owner
the memory owner
memory_claim_v1_t
Defined in psi/psi_memory.h:119
Instrument memory claim.
Returns
the effective memory instrument key
Parameters
key
the memory instrument key
size
the size of memory allocated
owner
the memory owner
key
the memory instrument key
size
the size of memory allocated
owner
the memory owner
memory_free_v1_t
Defined in psi/psi_memory.h:128
Instrument memory free.
Parameters
key
the memory instrument key
size
the size of memory allocated
owner
the memory owner
key
the memory instrument key
size
the size of memory allocated
owner
the memory owner
PSI_memory_info
Type: struct PSI_memory_info_v1
Defined in psi/psi_memory.h:148
MYSQL_SERVER_AUTH_INFO
Type: struct st_mysql_server_auth_info
Defined in plugin_auth.h:114
Provides server plugin access to authentication information
MYSQL_SOCKET
Type: struct st_mysql_socket
Defined in psi/mysql_socket.h:99
An instrumented socket. MYSQL_SOCKET is a replacement for my_socket.
mysql_mutex_t
Type: struct st_mysql_mutex
Defined in psi/mysql_thread.h:159
Type of an instrumented mutex. mysql_mutex_t is a drop-in replacement for pthread_mutex_t. See also: mysql_mutex_assert_owner
See also: mysql_mutex_assert_not_owner
See also: mysql_mutex_init
See also: mysql_mutex_lock
See also: mysql_mutex_unlock
See also: mysql_mutex_destroy
mysql_rwlock_t
Type: struct st_mysql_rwlock
Defined in psi/mysql_thread.h:204
Type of an instrumented rwlock. mysql_rwlock_t is a drop-in replacement for pthread_rwlock_t. See also: mysql_rwlock_init
See also: mysql_rwlock_rdlock
See also: mysql_rwlock_tryrdlock
See also: mysql_rwlock_wrlock
See also: mysql_rwlock_trywrlock
See also: mysql_rwlock_unlock
See also: mysql_rwlock_destroy
mysql_prlock_t
Type: struct st_mysql_prlock
Defined in psi/mysql_thread.h:216
Type of an instrumented prlock. A prlock is a read write lock that 'prefers readers' (pr). mysql_prlock_t is a drop-in replacement for rw_pr_lock_t. See also: mysql_prlock_init
See also: mysql_prlock_rdlock
See also: mysql_prlock_wrlock
See also: mysql_prlock_unlock
See also: mysql_prlock_destroy
mysql_cond_t
Type: struct st_mysql_cond
Defined in psi/mysql_thread.h:244
Type of an instrumented condition. mysql_cond_t is a drop-in replacement for pthread_cond_t. See also: mysql_cond_init
See also: mysql_cond_wait
See also: mysql_cond_timedwait
See also: mysql_cond_signal
See also: mysql_cond_broadcast
See also: mysql_cond_destroy
query_id_t
Defined in service_wsrep.h:53
LOGGER_HANDLE
Defined in service_logger.h:61
MYSQL_FTPARSER_BOOLEAN_INFO
Type: struct st_mysql_ftparser_boolean_info
Defined in plugin_ftparser.h:130
MYSQL_FTPARSER_PARAM
Type: struct st_mysql_ftparser_param
Defined in plugin_ftparser.h:198
CHARSET_INFO
Defined in psi/mysql_statement.h:35
thd_wait_type
Type: enum _thd_wait_type_e
Defined in service_thd_wait.h:79
MYSQL_CONST_LEX_STRING
Type: struct st_mysql_const_lex_string
Defined in service_thd_alloc.h:43
MYSQL_LEX_STRING
Type: struct st_mysql_lex_string
Defined in service_thd_alloc.h:57
mysql_authentication_dialog_ask_t
Defined in auth_dialog_client.h:43
type of the mysql_authentication_dialog_ask function
Parameters
mysql
mysql
type
type of the input 1 - ordinary string input 2 - password string
prompt
prompt
buf
a buffer to store the use input
buf_len
the length of the buffer
Return Values
a
pointer to the user input string. It may be equal to 'buf' or to 'mysql->password'. In all other cases it is assumed to be an allocated string, and the "dialog" plugin will free() it.
MYSQL_PLUGIN_VIO_INFO
Type: struct st_plugin_vio_info
Defined in plugin_auth_common.h:102
MYSQL_PLUGIN_VIO
Type: struct st_plugin_vio
Defined in plugin_auth_common.h:131
Provides plugin access to communication channel
MYSQL_THD_KEY_T
Defined in service_thd_specifics.h:60
Functions
SHOW_FUNC_ENTRY
static inline
Defined in plugin.h:219
thd_in_lock_tables
Defined in plugin.h:696
thd_tablespace_op
Defined in plugin.h:697
thd_test_options
Defined in plugin.h:698
thd_sql_command
Defined in plugin.h:699
thd_ddl_options
Defined in plugin.h:701
thd_storage_lock_wait
Defined in plugin.h:702
thd_tx_isolation
Defined in plugin.h:703
thd_tx_is_read_only
Defined in plugin.h:704
mysql_tmpfile
Defined in plugin.h:718
Create a temporary file.
The temporary file is created in a location specified by the mysql server configuration (–tmpdir option). The caller does not need to delete the file, it will be deleted automatically.
Parameters
prefix
const char *
prefix for temporary file name
Return Values
-1
error
>=
0 a file handle that can be passed to dup or my_close
thd_get_thread_id
Defined in plugin.h:726
Return the thread id of a user thread
Returns
thread id
Parameters
thd_get_xid
Defined in plugin.h:734
Get the XID for this connection's transaction
Parameters
mysql_query_cache_invalidate4
Defined in plugin.h:744
Invalidate the query cache for a given table.
Parameters
key
const char *
databasename\0tablename\0
key_length
unsigned int
length of key in bytes, including the NUL bytes
using_trx
int
flag: TRUE if using transactions, FALSE otherwise
thd_get_ha_data
Defined in plugin.h:752
Provide a handler data getter to simplify coding
thd_set_ha_data
Defined in plugin.h:776
Provide a handler data setter to simplify coding
Set ha_data pointer (storage engine per-connection information).
To avoid unclean deactivation (uninstall) of storage engine plugin in the middle of transaction, additional storage engine plugin lock is acquired.
If ha_data is not null and storage engine plugin was not locked by thd_set_ha_data() in this connection before, storage engine plugin gets locked.
If ha_data is null and storage engine plugin was locked by thd_set_ha_data() in this connection before, storage engine plugin lock gets released.
If transaction_participant::close_connection() didn't reset ha_data, server does it immediately after calling transaction_participant::close_connection()
thd_wakeup_subsequent_commits
Defined in plugin.h:811
Signal that the first part of handler commit is finished, and that the committed transaction is now visible and has fixed commit ordering with respect to other transactions. The commit need not be durable yet, and typically will not be when this call makes sense.
This call is optional, if the storage engine does not call it the upper layer will after the handler commit() method is done. However, the storage engine may choose to call it itself to increase the possibility for group commit.
In-order parallel replication uses this to apply different transaction in parallel, but delay the commits of later transactions until earlier transactions have committed first, thus achieving increased performance on multi-core systems while still preserving full transaction consistency.
The storage engine can call this from within the commit() method, typically after the commit record has been written to the transaction log, but before the log has been fsync()'ed. This will allow the next replicated transaction to proceed to commit before the first one has done fsync() or similar. Thus, it becomes possible for multiple sequential replicated transactions to share a single fsync() inside the engine in group commit.
Note that this method should not be called from within the commit_ordered() method, or any other place in the storage engine. When commit_ordered() is used (typically when binlog is enabled), the transaction coordinator takes care of this and makes group commit in the storage engine possible without any other action needed on the part of the storage engine. This function thd_wakeup_subsequent_commits() is only needed when no transaction coordinator is used, meaning a single storage engine and no binary log.
inline_mysql_file_register
static inline
Defined in psi/mysql_file.h:517
inline_mysql_file_fgets
static inline
Defined in psi/mysql_file.h:535
inline_mysql_file_fgetc
static inline
Defined in psi/mysql_file.h:563
inline_mysql_file_fputs
static inline
Defined in psi/mysql_file.h:591
inline_mysql_file_fputc
static inline
Defined in psi/mysql_file.h:621
inline_mysql_file_fprintf
static inline
Defined in psi/mysql_file.h:649
inline_mysql_file_vfprintf
static inline
Defined in psi/mysql_file.h:681
inline_mysql_file_fflush
static inline
Defined in psi/mysql_file.h:709
inline_mysql_file_feof
static inline
Defined in psi/mysql_file.h:736
inline_mysql_file_fstat
static inline
Defined in psi/mysql_file.h:743
inline_mysql_file_stat
static inline
Defined in psi/mysql_file.h:768
inline_mysql_file_chsize
static inline
Defined in psi/mysql_file.h:793
inline_mysql_file_fopen
static inline
Defined in psi/mysql_file.h:819
inline_mysql_file_fclose
static inline
Defined in psi/mysql_file.h:861
inline_mysql_file_fread
static inline
Defined in psi/mysql_file.h:895
inline_mysql_file_fwrite
static inline
Defined in psi/mysql_file.h:928
inline_mysql_file_fseek
static inline
Defined in psi/mysql_file.h:961
inline_mysql_file_ftell
static inline
Defined in psi/mysql_file.h:989
inline_mysql_file_create
static inline
Defined in psi/mysql_file.h:1017
inline_mysql_file_create_temp
static inline
Defined in psi/mysql_file.h:1043
inline_mysql_file_open
static inline
Defined in psi/mysql_file.h:1070
inline_mysql_file_close
static inline
Defined in psi/mysql_file.h:1096
inline_mysql_file_read
static inline
Defined in psi/mysql_file.h:1121
inline_mysql_file_write
static inline
Defined in psi/mysql_file.h:1151
inline_mysql_file_pread
static inline
Defined in psi/mysql_file.h:1181
inline_mysql_file_pwrite
static inline
Defined in psi/mysql_file.h:1211
inline_mysql_file_seek
static inline
Defined in psi/mysql_file.h:1241
inline_mysql_file_tell
static inline
Defined in psi/mysql_file.h:1266
inline_mysql_file_delete
static inline
Defined in psi/mysql_file.h:1291
inline_mysql_file_rename
static inline
Defined in psi/mysql_file.h:1316
inline_mysql_file_create_with_symlink
static inline
Defined in psi/mysql_file.h:1343
inline_mysql_file_delete_with_symlink
static inline
Defined in psi/mysql_file.h:1373
inline_mysql_file_rename_with_symlink
static inline
Defined in psi/mysql_file.h:1402
inline_mysql_file_sync
static inline
Defined in psi/mysql_file.h:1428
my_md5
Defined in service_md5.h:54
my_md5_multi
Defined in service_md5.h:55
my_md5_context_size
Defined in service_md5.h:56
my_md5_init
Defined in service_md5.h:57
my_md5_input
Defined in service_md5.h:58
my_md5_result
Defined in service_md5.h:59
mysql_real_connect_local
Defined in service_sql.h:112
get_current_thd
Defined in service_thd.h:38
current thd accessor
Returns
pointer to current thd
inline_mysql_memory_register
static inline
Defined in psi/mysql_memory.h:62
mysql_socket_invalid
static inline
Defined in psi/mysql_socket.h:115
MYSQL_SOCKET helper. Initialize instrumented socket. See also: mysql_socket_getfd
See also: mysql_socket_setfd
mysql_socket_set_address
static inline
Defined in psi/mysql_socket.h:130
Set socket descriptor and address.
Parameters
addr
const struct sockaddr *
unformatted socket address
addr_len
socklen_t
length of socket address
addr
const struct sockaddr *
unformatted socket address
addr_len
socklen_t
length of socket address
mysql_socket_set_thread_owner
static inline
Defined in psi/mysql_socket.h:153
Set socket descriptor and address.
Parameters
mysql_socket_getfd
static inline
Defined in psi/mysql_socket.h:173
MYSQL_SOCKET helper. Get socket descriptor. See also: mysql_socket_getfd
Parameters
mysql_socket_setfd
static inline
Defined in psi/mysql_socket.h:185
MYSQL_SOCKET helper. Set socket descriptor. See also: mysql_socket_setfd
Parameters
fd
my_socket
Socket descriptor
fd
my_socket
Socket descriptor
inline_mysql_start_socket_wait
static inline
Defined in psi/mysql_socket.h:266
Instrumentation calls for MYSQL_START_SOCKET_WAIT. See also: MYSQL_START_SOCKET_WAIT.
inline_mysql_end_socket_wait
static inline
Defined in psi/mysql_socket.h:288
Instrumentation calls for MYSQL_END_SOCKET_WAIT. See also: MYSQL_END_SOCKET_WAIT.
inline_mysql_socket_set_state
static inline
Defined in psi/mysql_socket.h:301
Set the state (IDLE, ACTIVE) of an instrumented socket. See also: PSI_socket_state
Parameters
state
enum PSI_socket_state
the new state
state
enum PSI_socket_state
the new state
inline_mysql_socket_register
static inline
Defined in psi/mysql_socket.h:589
inline_mysql_socket_fd
static inline
Defined in psi/mysql_socket.h:601
mysql_socket_fd
inline_mysql_socket_socket
static inline
Defined in psi/mysql_socket.h:634
mysql_socket_socket
inline_mysql_socket_bind
static inline
Defined in psi/mysql_socket.h:663
mysql_socket_bind
inline_mysql_socket_getsockname
static inline
Defined in psi/mysql_socket.h:703
mysql_socket_getsockname
inline_mysql_socket_connect
static inline
Defined in psi/mysql_socket.h:741
mysql_socket_connect
inline_mysql_socket_getpeername
static inline
Defined in psi/mysql_socket.h:779
mysql_socket_getpeername
inline_mysql_socket_send
static inline
Defined in psi/mysql_socket.h:817
mysql_socket_send
inline_mysql_socket_recv
static inline
Defined in psi/mysql_socket.h:858
mysql_socket_recv
inline_mysql_socket_sendto
static inline
Defined in psi/mysql_socket.h:899
mysql_socket_sendto
inline_mysql_socket_recvfrom
static inline
Defined in psi/mysql_socket.h:940
mysql_socket_recvfrom
inline_mysql_socket_getsockopt
static inline
Defined in psi/mysql_socket.h:982
mysql_socket_getsockopt
inline_mysql_socket_setsockopt
static inline
Defined in psi/mysql_socket.h:1020
mysql_socket_setsockopt
set_socket_nonblock
static inline
Defined in psi/mysql_socket.h:1058
set_socket_nonblock
inline_mysql_sock_set_nonblocking
static inline
Defined in psi/mysql_socket.h:1091
mysql_socket_set_nonblocking
inline_mysql_socket_listen
static inline
Defined in psi/mysql_socket.h:1131
mysql_socket_listen
inline_mysql_socket_accept
static inline
Defined in psi/mysql_socket.h:1169
mysql_socket_accept
inline_mysql_socket_close
static inline
Defined in psi/mysql_socket.h:1250
mysql_socket_close
inline_mysql_socket_shutdown
static inline

