24#ifndef COMPONENTS_SERVICES_BITS_PSI_FILE_BITS_H
25#define COMPONENTS_SERVICES_BITS_PSI_FILE_BITS_H
27#ifndef MYSQL_ABI_CHECK
220typedef struct PSI_file_locker *(*get_thread_file_descriptor_locker_v1_t)(
231 const char *src_file,
232 unsigned int src_line);
240typedef struct PSI_file *(*end_file_open_wait_v1_t)(
268 size_t count,
const char *src_file,
269 unsigned int src_line);
293 const char *src_file,
294 unsigned int src_line);
314 size_t count,
const char *old_name,
315 const char *new_name,
316 const char *src_file,
317 unsigned int src_line);
326 const char *old_name,
327 const char *new_name,
int rc);
struct PSI_file PSI_file
Definition: psi_file_bits.h:55
void(* start_file_rename_wait_v1_t)(struct PSI_file_locker *locker, size_t count, const char *old_name, const char *new_name, const char *src_file, unsigned int src_line)
Record a file instrumentation start event.
Definition: psi_file_bits.h:313
void(* end_file_rename_wait_v1_t)(struct PSI_file_locker *locker, const char *old_name, const char *new_name, int rc)
Rename a file instrumentation close operation.
Definition: psi_file_bits.h:325
void(* end_file_wait_v1_t)(struct PSI_file_locker *locker, size_t count)
Record a file instrumentation end event.
Definition: psi_file_bits.h:283
void(* start_file_wait_v1_t)(struct PSI_file_locker *locker, size_t count, const char *src_file, unsigned int src_line)
Record a file instrumentation start event.
Definition: psi_file_bits.h:267
void(* end_file_open_wait_and_bind_to_descriptor_v1_t)(struct PSI_file_locker *locker, File file)
End a file instrumentation open operation, for non stream files.
Definition: psi_file_bits.h:248
void(* start_file_close_wait_v1_t)(struct PSI_file_locker *locker, const char *src_file, unsigned int src_line)
Start a file instrumentation close operation.
Definition: psi_file_bits.h:292
unsigned int PSI_file_key
Instrumented file key.
Definition: psi_file_bits.h:48
void(* end_temp_file_open_wait_and_bind_to_descriptor_v1_t)(struct PSI_file_locker *locker, File file, const char *filename)
End a file instrumentation open operation, for non stream temporary files.
Definition: psi_file_bits.h:257
void(* create_file_v1_t)(PSI_file_key key, const char *name, File file)
Create a file instrumentation for a created file.
Definition: psi_file_bits.h:187
void(* register_file_v1_t)(const char *category, struct PSI_file_info_v1 *info, int count)
File registration API.
Definition: psi_file_bits.h:176
void(* end_file_close_wait_v1_t)(struct PSI_file_locker *locker, int rc)
End a file instrumentation close operation.
Definition: psi_file_bits.h:301
struct PSI_file_locker PSI_file_locker
Definition: psi_file_bits.h:62
void(* start_file_open_wait_v1_t)(struct PSI_file_locker *locker, const char *src_file, unsigned int src_line)
Start a file instrumentation open operation.
Definition: psi_file_bits.h:230
PSI_file_operation
Operation performed on an instrumented file.
Definition: psi_file_bits.h:65
@ PSI_FILE_OPEN
File open, as in open().
Definition: psi_file_bits.h:71
@ PSI_FILE_STREAM_CLOSE
File close, as in fclose().
Definition: psi_file_bits.h:77
@ PSI_FILE_WRITE
Generic file write, such as fputs(), fputc(), fprintf(), vfprintf(), fwrite(), write(),...
Definition: psi_file_bits.h:87
@ PSI_FILE_CHSIZE
File chsize, as in my_chsize().
Definition: psi_file_bits.h:99
@ PSI_FILE_CLOSE
File close, as in close().
Definition: psi_file_bits.h:75
@ PSI_FILE_SEEK
Generic file seek, such as fseek() or seek().
Definition: psi_file_bits.h:89
@ PSI_FILE_TELL
Generic file tell, such as ftell() or tell().
Definition: psi_file_bits.h:91
@ PSI_FILE_STREAM_OPEN
File open, as in fopen().
Definition: psi_file_bits.h:73
@ PSI_FILE_CREATE
File creation, as in create().
Definition: psi_file_bits.h:67
@ PSI_FILE_FSTAT
File stat, as in fstat().
Definition: psi_file_bits.h:97
@ PSI_FILE_RENAME
File rename, such as my_rename() or my_rename_with_symlink().
Definition: psi_file_bits.h:103
@ PSI_FILE_STAT
File stat, as in stat().
Definition: psi_file_bits.h:95
@ PSI_FILE_DELETE
File delete, such as my_delete() or my_delete_with_symlink().
Definition: psi_file_bits.h:101
@ PSI_FILE_FLUSH
File flush, as in fflush().
Definition: psi_file_bits.h:93
@ PSI_FILE_CREATE_TMP
Temporary file creation, as in create_temp_file().
Definition: psi_file_bits.h:69
@ PSI_FILE_READ
Generic file read, such as fgets(), fgetc(), fread(), read(), pread().
Definition: psi_file_bits.h:82
@ PSI_FILE_SYNC
File sync, as in fsync() or my_sync().
Definition: psi_file_bits.h:105
struct PSI_thread PSI_thread
Definition: psi_thread_bits.h:82
Types to make file and socket I/O compatible.
int File
Definition: my_io_bits.h:51
static int count
Definition: myisam_ftdump.cc:43
static const char * category
Definition: sha2_password.cc:170
const char * filename
Definition: pfs_example_component_population.cc:67
struct result result
Definition: result.h:34
Performance schema instrumentation interface.
required string key
Definition: replication_asynchronous_connection_failover.proto:60
case opt name
Definition: sslopt-case.h:33
File instrument information.
Definition: psi_file_bits.h:114
const char * m_name
The name of the file instrument to register.
Definition: psi_file_bits.h:122
int m_volatility
Volatility index.
Definition: psi_file_bits.h:129
const char * m_documentation
Documentation.
Definition: psi_file_bits.h:131
unsigned int m_flags
The flags of the file instrument to register.
Definition: psi_file_bits.h:127
PSI_file_key * m_key
Pointer to the key assigned to the registered file.
Definition: psi_file_bits.h:118
State data storage for get_thread_file_name_locker_v1_t.
Definition: psi_file_bits.h:146
struct PSI_file * m_file
Current file.
Definition: psi_file_bits.h:152
size_t m_number_of_bytes
Operation number of bytes.
Definition: psi_file_bits.h:160
const char * m_name
Current file name.
Definition: psi_file_bits.h:154
unsigned long long(* m_timer)(void)
Timer function.
Definition: psi_file_bits.h:164
struct PSI_thread * m_thread
Current thread.
Definition: psi_file_bits.h:158
enum PSI_file_operation m_operation
Current operation.
Definition: psi_file_bits.h:150
unsigned long long m_timer_start
Timer start.
Definition: psi_file_bits.h:162
void * m_class
Current file class.
Definition: psi_file_bits.h:156
void * m_wait
Internal data.
Definition: psi_file_bits.h:166
unsigned int m_flags
Internal state.
Definition: psi_file_bits.h:148