For the complete documentation index, see llms.txt. This page is also available as Markdown.

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

Name
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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.


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.


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.


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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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.

Value
Description

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

Value
Description

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

Value
Description

SHOW_OPT_DEFAULT

SHOW_OPT_SESSION

SHOW_OPT_GLOBAL

SHOW_OPT_SESSION_NO_LOCK


json_types

Defined in service_json.h:51

Value
Description

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

Value
Description

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

Value
Description

MYSQL_FTPARSER_SIMPLE_MODE

MYSQL_FTPARSER_WITH_STOPWORDS

MYSQL_FTPARSER_FULL_BOOLEAN_INFO


enum_ft_token_type

Defined in plugin_ftparser.h:80

Value
Description

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

Value
Description

MY_AES_ECB

MY_AES_CBC


my_digest

Defined in service_my_crypt.h:60

Value
Description

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

Value
Description

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

Value
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

prepared_stmt

prepared statement.

prepared_stmt

prepared statement.


reprepare_prepared_stmt_v1_t

Defined in psi/psi.h:2367

reprepare a prepare statement.

Parameters

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Value
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Parameter
Type
Description

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

Value
Description

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

Parameter
Type
Description

prefix

const char *

prefix for temporary file name

Return Values

Value
Description

-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

Parameter
Type
Description

thd

const MYSQL_THD

user thread connection handle


thd_get_xid

Defined in plugin.h:734

Get the XID for this connection's transaction

Parameters

Parameter
Type
Description

thd

const MYSQL_THD

user thread connection handle

xid

location where identifier is stored


mysql_query_cache_invalidate4

Defined in plugin.h:744

Invalidate the query cache for a given table.

Parameters

Parameter
Type
Description

thd

user thread connection handle

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


static inline

Defined in psi/mysql_file.h:1343


static inline

Defined in psi/mysql_file.h:1373


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

Parameter
Type
Description

socket

instrumented socket

addr

const struct sockaddr *

unformatted socket address

addr_len

socklen_t

length of socket address

socket

instrumented socket

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

Parameter
Type
Description

socket

instrumented socket

socket

instrumented socket


mysql_socket_getfd

static inline

Defined in psi/mysql_socket.h:173

MYSQL_SOCKET helper. Get socket descriptor. See also: mysql_socket_getfd

Parameters

Parameter
Type
Description

mysql_socket

Instrumented socket

mysql_socket

Instrumented socket


mysql_socket_setfd

static inline

Defined in psi/mysql_socket.h:185

MYSQL_SOCKET helper. Set socket descriptor. See also: mysql_socket_setfd

Parameters

Parameter
Type
Description

mysql_socket

Instrumented socket

fd

my_socket

Socket descriptor

mysql_socket

Instrumented socket

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

Parameter
Type
Description

socket

the instrumented socket

state

enum PSI_socket_state

the new state

socket

the instrumented socket

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