23#ifndef PFS_SOCKET_PROVIDER_H
24#define PFS_SOCKET_PROVIDER_H
36#ifdef HAVE_PSI_SOCKET_INTERFACE
37#if defined(MYSQL_SERVER) || defined(PFS_DIRECT_CALL)
38#ifndef MYSQL_DYNAMIC_PLUGIN
39#ifndef WITH_LOCK_ORDER
42#ifdef HAVE_SYS_SOCKET_H
43#include <sys/socket.h>
51#define PSI_SOCKET_CALL(M) pfs_##M##_v1
57 const struct sockaddr *addr, socklen_t addr_len);
64 size_t count,
const char *src_file,
72 const struct sockaddr *addr, socklen_t addr_len);
PSI_socket_operation
Operation performed on an instrumented socket.
Definition: psi_socket_bits.h:88
struct PSI_socket_locker PSI_socket_locker
Definition: psi_socket_bits.h:76
PSI_socket_state
State of an instrumented socket.
Definition: psi_socket_bits.h:79
unsigned int PSI_socket_key
Instrumented socket key.
Definition: psi_socket_bits.h:48
Common #defines and includes for file and socket I/O.
Defines various enable/disable and HAVE_ macros related to the performance schema instrumentation sys...
static int count
Definition: myisam_ftdump.cc:44
int my_socket
Definition: mysql.h:64
stdx::expected< native_handle_type, error_type > socket(int family, int sock_type, int protocol)
Definition: socket.h:62
static const char * category
Definition: sha2_password.cc:169
void pfs_set_socket_info_v1(PSI_socket *socket, const my_socket *fd, const struct sockaddr *addr, socklen_t addr_len)
Set socket descriptor and address info.
Definition: pfs.cc:8006
PSI_socket * pfs_init_socket_v1(PSI_socket_key key, const my_socket *fd, const struct sockaddr *addr, socklen_t addr_len)
Definition: pfs.cc:2921
void pfs_end_socket_wait_v1(PSI_socket_locker *locker, size_t byte_count)
Implementation of the socket instrumentation interface.
Definition: pfs.cc:7914
void pfs_register_socket_v1(const char *category, PSI_socket_info_v1 *info, int count)
Definition: pfs.cc:2636
void pfs_set_socket_thread_owner_v1(PSI_socket *socket)
Implementation of the socket instrumentation interface.
Definition: pfs.cc:8029
PSI_socket_locker * pfs_start_socket_wait_v1(PSI_socket_locker_state *state, PSI_socket *socket, PSI_socket_operation op, size_t count, const char *src_file, uint src_line)
Socket locker.
Definition: pfs.cc:4653
void pfs_set_socket_state_v1(PSI_socket *socket, PSI_socket_state state)
Definition: pfs.cc:7993
void pfs_destroy_socket_v1(PSI_socket *socket)
Definition: pfs.cc:2939
Performance schema instrumentation interface.
required string key
Definition: replication_asynchronous_connection_failover.proto:59
struct sockaddr sockaddr
Definition: sock_probe_win32.h:62
Socket instrument information.
Definition: psi_socket_bits.h:127
State data storage for start_socket_wait_v1_t.
Definition: psi_socket_bits.h:157
Interface for an instrumented socket descriptor.
Definition: psi_socket_bits.h:68