24#ifndef PFS_SOCKET_PROVIDER_H
25#define PFS_SOCKET_PROVIDER_H
37#ifdef HAVE_PSI_SOCKET_INTERFACE
38#if defined(MYSQL_SERVER) || defined(PFS_DIRECT_CALL)
39#ifndef MYSQL_DYNAMIC_PLUGIN
40#ifndef WITH_LOCK_ORDER
43#ifdef HAVE_SYS_SOCKET_H
44#include <sys/socket.h>
52#define PSI_SOCKET_CALL(M) pfs_##M##_v1
58 const struct sockaddr *addr, socklen_t addr_len);
65 size_t count,
const char *src_file,
73 const struct sockaddr *addr, socklen_t addr_len);
PSI_socket_operation
Operation performed on an instrumented socket.
Definition: psi_socket_bits.h:89
struct PSI_socket_locker PSI_socket_locker
Definition: psi_socket_bits.h:77
PSI_socket_state
State of an instrumented socket.
Definition: psi_socket_bits.h:80
unsigned int PSI_socket_key
Instrumented socket key.
Definition: psi_socket_bits.h:49
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:45
int my_socket
Definition: mysql.h:65
stdx::expected< native_handle_type, error_type > socket(int family, int sock_type, int protocol)
Definition: socket.h:63
static const char * category
Definition: sha2_password.cc:170
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:8041
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:2929
void pfs_end_socket_wait_v1(PSI_socket_locker *locker, size_t byte_count)
Implementation of the socket instrumentation interface.
Definition: pfs.cc:7950
void pfs_register_socket_v1(const char *category, PSI_socket_info_v1 *info, int count)
Definition: pfs.cc:2644
void pfs_set_socket_thread_owner_v1(PSI_socket *socket)
Implementation of the socket instrumentation interface.
Definition: pfs.cc:8064
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:4688
void pfs_set_socket_state_v1(PSI_socket *socket, PSI_socket_state state)
Definition: pfs.cc:8028
void pfs_destroy_socket_v1(PSI_socket *socket)
Definition: pfs.cc:2947
Performance schema instrumentation interface.
required string key
Definition: replication_asynchronous_connection_failover.proto:60
struct sockaddr sockaddr
Definition: sock_probe_win32.h:63
Socket instrument information.
Definition: psi_socket_bits.h:128
State data storage for start_socket_wait_v1_t.
Definition: psi_socket_bits.h:158
Interface for an instrumented socket descriptor.
Definition: psi_socket_bits.h:69