190 m_lock_stat.
aggregate(&stat->m_lock_stat);
222 m_read_lock_stat.
aggregate(&stat->m_read_lock_stat);
223 m_write_lock_stat.
aggregate(&stat->m_write_lock_stat);
230 m_read_lock_stat.
reset();
231 m_write_lock_stat.
reset();
256 m_signal_count += stat->m_signal_count;
257 m_broadcast_count += stat->m_broadcast_count;
265 m_broadcast_count = 0;
523 switch (error_operation) {
564 return &
m_stat[error_index];
580 if (max_errors == 0) {
640 for (uint i = 0; i < common_max; i++) {
706#define COUNT_PFS_TL_LOCK_TYPE 10
715 for (;
pfs < pfs_last;
pfs++) {
724 for (;
pfs < pfs_last;
pfs++, pfs_from++) {
725 pfs->aggregate(pfs_from);
732 for (;
pfs < pfs_last;
pfs++) {
756 for (; stat < stat_last; stat++) {
789 to_stat_last = to_stat + key_count;
791 for (; to_stat < to_stat_last; from_stat++, to_stat++) {
818 stat_last = stat + key_count;
819 for (; stat < stat_last; stat++) {
1047 size_t *stmt_size_start) {
1054 *local_size_start =
m_size;
1063 size_t *stmt_size) {
1152 size_t *controlled_stmt_size_start,
1153 size_t *total_local_size_start,
1154 size_t *total_stmt_size_start) {
1156 controlled_stmt_size_start);
1158 total_stmt_size_start);
1162 size_t controlled_stmt_size_start,
1163 size_t total_local_size_start,
1164 size_t total_stmt_size_start,
1165 size_t *controlled_size,
size_t *total_size) {
1167 controlled_stmt_size_start,
Fido Client Authentication nullptr
Definition: fido_client_plugin.cc:221
#define MY_ZEROFILL
Definition: my_sys.h:138
@ PSI_ERROR_OPERATION_HANDLED
Definition: psi_error_bits.h:37
@ PSI_ERROR_OPERATION_RAISED
Definition: psi_error_bits.h:36
#define MAX_INDEXES
Definition: config.h:209
constexpr bool unlikely(bool expr)
Definition: my_compiler.h:57
unsigned long long int ulonglong
Definition: my_inttypes.h:55
#define MYF(v)
Definition: my_inttypes.h:96
Common header for many mysys elements.
Defines for getting and processing the current system type programmatically.
unsigned long long int my_micro_time()
Return time in microseconds.
Definition: my_systime.h:181
static int count
Definition: myisam_ftdump.cc:44
Type total(const Shards< COUNT > &shards) noexcept
Get the total value of all shards.
Definition: ut0counter.h:332
static int wait(mysql_cond_t *that, mysql_mutex_t *mutex, const char *, unsigned int)
Definition: mysql_cond_v1_native.cc:51
server error instrument data structures (declarations).
Miscellaneous global dependencies (declarations).
#define PFS_MALLOC_ARRAY(k, n, s, T, f)
Helper, to allocate an array of structures.
Definition: pfs_global.h:122
#define PFS_FREE_ARRAY(k, n, s, p)
Helper, to free an array of structures.
Definition: pfs_global.h:139
File containing constants that can be used throughout the server.
static const LEX_CSTRING pfs
Definition: sql_show_processlist.cc:65
Definition: pfs_stat.h:1014
void count_alloc(size_t size)
Definition: pfs_stat.h:1080
size_t m_size
The current memory size allocated.
Definition: pfs_stat.h:1016
size_t m_max_stmt_size
The maximum memory size allocated, for a statement.
Definition: pfs_stat.h:1020
size_t m_max_local_size
The maximum memory size allocated, for a sub statement.
Definition: pfs_stat.h:1018
size_t m_max_session_size
The maximum memory size allocated, for this session.
Definition: pfs_stat.h:1022
void end_top_statement(size_t *stmt_size)
Definition: pfs_stat.h:1039
void count_free(size_t size)
Definition: pfs_stat.h:1087
size_t get_session_size() const
Definition: pfs_stat.h:1125
void end_nested_statement(size_t local_size_start, size_t stmt_size_start, size_t *stmt_size)
Definition: pfs_stat.h:1062
void start_nested_statement(size_t *local_size_start, size_t *stmt_size_start)
Definition: pfs_stat.h:1046
void start_top_statement()
Definition: pfs_stat.h:1031
void reset()
Definition: pfs_stat.h:1024
size_t get_session_max() const
Definition: pfs_stat.h:1127
Definition: pfs_builtin_memory.h:38
Combined statistic.
Definition: pfs_stat.h:129
void reset()
Definition: pfs_stat.h:169
PFS_byte_stat()
Definition: pfs_stat.h:167
ulonglong m_bytes
Byte count statistics.
Definition: pfs_stat.h:131
void aggregate_waits(const PFS_byte_stat *stat)
Aggregate wait stats and event count.
Definition: pfs_stat.h:154
void aggregate_no_check(const PFS_byte_stat *stat)
Aggregate wait stats, event count and byte count.
Definition: pfs_stat.h:142
void aggregate_counted(ulonglong bytes)
Aggregate event count and byte count.
Definition: pfs_stat.h:162
void aggregate_counted()
Aggregate event count and byte count.
Definition: pfs_stat.h:159
void aggregate(ulonglong wait, ulonglong bytes)
Aggregate individual wait time, event count and byte count.
Definition: pfs_stat.h:148
void aggregate(const PFS_byte_stat *stat)
Aggregate wait stats, event count and byte count.
Definition: pfs_stat.h:134
Statistics for conditions usage.
Definition: pfs_stat.h:237
void aggregate(const PFS_cond_stat *stat)
Definition: pfs_stat.h:253
PFS_single_stat m_wait_stat
Wait statistics.
Definition: pfs_stat.h:239
void reset()
Definition: pfs_stat.h:261
Connections statistics.
Definition: pfs_stat.h:1226
PFS_connection_stat()
Definition: pfs_stat.h:1227
void aggregate_active(ulonglong active, ulonglong controlled_memory, ulonglong total_memory)
Definition: pfs_stat.h:1238
ulonglong m_current_connections
Definition: pfs_stat.h:1233
ulonglong m_max_session_controlled_memory
Definition: pfs_stat.h:1235
ulonglong m_max_session_total_memory
Definition: pfs_stat.h:1236
void aggregate_disconnected(ulonglong disconnected, ulonglong controlled_memory, ulonglong total_memory)
Definition: pfs_stat.h:1252
ulonglong m_total_connections
Definition: pfs_stat.h:1234
Statistics for a server error.
Definition: pfs_stat.h:494
ulonglong m_last_seen
Definition: pfs_stat.h:499
void aggregate_count(int error_operation)
Definition: pfs_stat.h:517
ulonglong m_count
Definition: pfs_stat.h:495
PFS_error_single_stat()
Definition: pfs_stat.h:501
ulonglong m_handled_count
Definition: pfs_stat.h:496
ulonglong count() const
Definition: pfs_stat.h:508
ulonglong m_first_seen
First and last seen timestamps.
Definition: pfs_stat.h:498
void reset()
Definition: pfs_stat.h:510
void aggregate(const PFS_error_single_stat *stat)
Definition: pfs_stat.h:538
Statistics for all server errors.
Definition: pfs_stat.h:556
ulonglong count(uint error_index) const
Definition: pfs_stat.h:575
void aggregate(const PFS_error_stat *stat)
Definition: pfs_stat.h:630
const PFS_error_single_stat * get_stat(uint error_index) const
Definition: pfs_stat.h:563
ulonglong count() const
Definition: pfs_stat.h:567
void aggregate_count(int error_index, int error_operation)
Definition: pfs_stat.h:612
PFS_error_single_stat * m_stat
Definition: pfs_stat.h:559
PFS_error_stat()
Definition: pfs_stat.h:561
void init(PFS_builtin_memory_class *memory_class, size_t max_errors)
Definition: pfs_stat.h:579
void aggregate(const PFS_error_single_stat *stat, uint error_index)
Definition: pfs_stat.h:621
void reset()
Definition: pfs_stat.h:602
size_t m_max_errors
The number of errors, including +1 for the NULL row.
Definition: pfs_stat.h:558
void cleanup(PFS_builtin_memory_class *memory_class)
Definition: pfs_stat.h:592
Statistics for FILE I/O.
Definition: pfs_stat.h:271
void sum_waits(PFS_single_stat *stat)
Definition: pfs_stat.h:299
PFS_byte_stat m_read
READ statistics.
Definition: pfs_stat.h:273
void sum(PFS_byte_stat *stat)
Definition: pfs_stat.h:292
PFS_byte_stat m_write
WRITE statistics.
Definition: pfs_stat.h:275
void aggregate(const PFS_file_io_stat *stat)
Definition: pfs_stat.h:285
void reset()
Definition: pfs_stat.h:279
PFS_byte_stat m_misc
Miscellaneous statistics.
Definition: pfs_stat.h:277
Statistics for FILE usage.
Definition: pfs_stat.h:307
ulong m_open_count
Number of current open handles.
Definition: pfs_stat.h:309
void reset()
Reset file statistics.
Definition: pfs_stat.h:318
PFS_file_io_stat m_io_stat
File I/O statistics.
Definition: pfs_stat.h:311
void aggregate(const PFS_file_stat *stat)
Definition: pfs_stat.h:313
Definition: pfs_stat.h:990
size_t m_alloc_count
Definition: pfs_stat.h:991
size_t m_free_count_capacity
Definition: pfs_stat.h:997
size_t m_free_size
Definition: pfs_stat.h:994
size_t m_free_count
Definition: pfs_stat.h:992
size_t m_missing_free_size_capacity
Definition: pfs_stat.h:1002
ssize_t m_high_size_used
Definition: pfs_stat.h:1007
size_t m_alloc_count_capacity
Definition: pfs_stat.h:996
size_t m_alloc_size
Definition: pfs_stat.h:993
size_t m_missing_free_count_capacity
Definition: pfs_stat.h:1001
size_t m_alloc_size_capacity
Definition: pfs_stat.h:998
size_t m_free_size_capacity
Definition: pfs_stat.h:999
ssize_t m_low_count_used
Definition: pfs_stat.h:1004
ssize_t m_low_size_used
Definition: pfs_stat.h:1006
ssize_t m_high_count_used
Definition: pfs_stat.h:1005
Memory statistics.
Definition: pfs_stat.h:912
size_t m_free_count
Definition: pfs_stat.h:916
size_t m_free_size_capacity
Definition: pfs_stat.h:923
size_t m_alloc_count_capacity
Definition: pfs_stat.h:920
size_t m_alloc_size
Definition: pfs_stat.h:917
size_t m_free_count_capacity
Definition: pfs_stat.h:921
bool m_used
Definition: pfs_stat.h:913
size_t m_alloc_count
Definition: pfs_stat.h:915
size_t m_alloc_size_capacity
Definition: pfs_stat.h:922
size_t m_free_size
Definition: pfs_stat.h:918
Definition: pfs_stat.h:936
std::atomic< size_t > m_free_size_capacity
Definition: pfs_stat.h:947
std::atomic< size_t > m_free_count
Definition: pfs_stat.h:940
std::atomic< size_t > m_free_count_capacity
Definition: pfs_stat.h:945
std::atomic< size_t > m_free_size
Definition: pfs_stat.h:942
void count_global_free(size_t size)
Definition: pfs_stat.h:959
std::atomic< size_t > m_alloc_count_capacity
Definition: pfs_stat.h:944
void count_global_alloc(size_t size)
Definition: pfs_stat.h:957
std::atomic< size_t > m_alloc_size
Definition: pfs_stat.h:941
std::atomic< size_t > m_alloc_count
Definition: pfs_stat.h:939
std::atomic< bool > m_used
Definition: pfs_stat.h:937
std::atomic< size_t > m_alloc_size_capacity
Definition: pfs_stat.h:946
Definition: pfs_stat.h:882
size_t m_alloc_count_delta
Definition: pfs_stat.h:883
size_t m_alloc_size_delta
Definition: pfs_stat.h:884
Definition: pfs_stat.h:887
size_t m_free_size_delta
Definition: pfs_stat.h:889
size_t m_free_count_delta
Definition: pfs_stat.h:888
Statistics for mutex usage.
Definition: pfs_stat.h:176
PFS_single_stat m_wait_stat
Wait statistics.
Definition: pfs_stat.h:178
void aggregate(const PFS_mutex_stat *stat)
Definition: pfs_stat.h:187
void reset()
Definition: pfs_stat.h:194
Statistics for prepared statement usage.
Definition: pfs_stat.h:356
void reset()
Definition: pfs_stat.h:359
PFS_single_stat m_timer1_stat
Definition: pfs_stat.h:357
void aggregate_value(ulonglong value)
Definition: pfs_stat.h:363
void aggregate_counted()
Definition: pfs_stat.h:361
void aggregate(PFS_stage_stat *stat)
Definition: pfs_stat.h:367
Statistics for rwlock usage.
Definition: pfs_stat.h:203
void aggregate(const PFS_rwlock_stat *stat)
Definition: pfs_stat.h:219
void reset()
Definition: pfs_stat.h:227
PFS_single_stat m_wait_stat
Wait statistics.
Definition: pfs_stat.h:205
Definition: pfs_stat.h:1135
PFS_all_memory_stat m_total
Definition: pfs_stat.h:1137
void end_nested_statement(size_t controlled_local_size_start, size_t controlled_stmt_size_start, size_t total_local_size_start, size_t total_stmt_size_start, size_t *controlled_size, size_t *total_size)
Definition: pfs_stat.h:1161
void end_top_statement(size_t *controlled_size, size_t *total_size)
Definition: pfs_stat.h:1146
PFS_all_memory_stat m_controlled
Definition: pfs_stat.h:1136
void start_nested_statement(size_t *controlled_local_size_start, size_t *controlled_stmt_size_start, size_t *total_local_size_start, size_t *total_stmt_size_start)
Definition: pfs_stat.h:1151
void start_top_statement()
Definition: pfs_stat.h:1141
Single statistic.
Definition: pfs_stat.h:51
void aggregate_counted()
Definition: pfs_stat.h:101
void aggregate_value(ulonglong value)
Definition: pfs_stat.h:105
void aggregate(const PFS_single_stat *stat)
Definition: pfs_stat.h:77
void aggregate_many_value(ulonglong value, ulonglong count)
Definition: pfs_stat.h:116
PFS_single_stat()
Definition: pfs_stat.h:61
ulonglong m_count
Count of values.
Definition: pfs_stat.h:53
ulonglong m_max
Maximum value.
Definition: pfs_stat.h:59
void aggregate_counted(ulonglong count)
Definition: pfs_stat.h:103
void reset()
Definition: pfs_stat.h:68
ulonglong m_min
Minimum value.
Definition: pfs_stat.h:57
bool has_timed_stats() const
Definition: pfs_stat.h:75
void aggregate_no_check(const PFS_single_stat *stat)
Definition: pfs_stat.h:90
ulonglong m_sum
Sum of values.
Definition: pfs_stat.h:55
Statistics for SOCKET I/O.
Definition: pfs_stat.h:838
void sum(PFS_byte_stat *stat)
Definition: pfs_stat.h:859
void aggregate(const PFS_socket_io_stat *stat)
Definition: pfs_stat.h:852
void sum_waits(PFS_single_stat *stat)
Definition: pfs_stat.h:866
PFS_byte_stat m_read
READ statistics.
Definition: pfs_stat.h:840
PFS_byte_stat m_misc
Miscellaneous statistics.
Definition: pfs_stat.h:844
void reset()
Definition: pfs_stat.h:846
PFS_byte_stat m_write
WRITE statistics.
Definition: pfs_stat.h:842
Statistics for SOCKET usage.
Definition: pfs_stat.h:874
void reset()
Reset socket statistics.
Definition: pfs_stat.h:879
PFS_socket_io_stat m_io_stat
Socket timing and byte count statistics per operation.
Definition: pfs_stat.h:876
Statistics for stored program usage.
Definition: pfs_stat.h:339
void aggregate_value(ulonglong value)
Definition: pfs_stat.h:346
PFS_single_stat m_timer1_stat
Definition: pfs_stat.h:340
void reset()
Definition: pfs_stat.h:342
void aggregate(const PFS_stage_stat *stat)
Definition: pfs_stat.h:350
void aggregate_counted()
Definition: pfs_stat.h:344
Statistics for stage usage.
Definition: pfs_stat.h:322
void reset()
Definition: pfs_stat.h:325
void aggregate(const PFS_stage_stat *stat)
Definition: pfs_stat.h:333
PFS_single_stat m_timer1_stat
Definition: pfs_stat.h:323
void aggregate_value(ulonglong value)
Definition: pfs_stat.h:329
void aggregate_counted()
Definition: pfs_stat.h:327
Statistics for statement usage.
Definition: pfs_stat.h:375
ulonglong m_max_total_memory
Definition: pfs_stat.h:402
ulonglong m_sort_range
Definition: pfs_stat.h:391
void aggregate_value(ulonglong value)
Definition: pfs_stat.h:409
ulonglong m_select_range_check
Definition: pfs_stat.h:388
ulonglong m_select_scan
Definition: pfs_stat.h:389
ulonglong m_no_good_index_used
Definition: pfs_stat.h:395
ulonglong m_sort_rows
Definition: pfs_stat.h:392
ulonglong m_lock_time
Definition: pfs_stat.h:380
ulonglong m_created_tmp_disk_tables
Definition: pfs_stat.h:383
ulonglong m_max_controlled_memory
Definition: pfs_stat.h:401
ulonglong m_select_range
Definition: pfs_stat.h:387
void aggregate_counted()
Definition: pfs_stat.h:407
void reset()
Definition: pfs_stat.h:405
ulonglong m_cpu_time
CPU TIME.
Definition: pfs_stat.h:400
void aggregate_memory_size(size_t controlled_size, size_t total_size)
Definition: pfs_stat.h:413
ulonglong m_count_secondary
Definition: pfs_stat.h:403
ulonglong m_sort_scan
Definition: pfs_stat.h:393
ulonglong m_select_full_range_join
Definition: pfs_stat.h:386
ulonglong m_select_full_join
Definition: pfs_stat.h:385
ulonglong m_rows_examined
Definition: pfs_stat.h:382
ulonglong m_warning_count
Definition: pfs_stat.h:378
ulonglong m_rows_affected
Definition: pfs_stat.h:379
PFS_single_stat m_timer1_stat
Definition: pfs_stat.h:376
void aggregate(const PFS_statement_stat *stat)
Definition: pfs_stat.h:422
ulonglong m_created_tmp_tables
Definition: pfs_stat.h:384
ulonglong m_error_count
Definition: pfs_stat.h:377
ulonglong m_no_index_used
Definition: pfs_stat.h:394
ulonglong m_sort_merge_passes
Definition: pfs_stat.h:390
ulonglong m_rows_sent
Definition: pfs_stat.h:381
Single table I/O statistic.
Definition: pfs_stat.h:647
PFS_table_io_stat()
Definition: pfs_stat.h:658
void sum(PFS_single_stat *result)
Definition: pfs_stat.h:678
PFS_single_stat m_insert
INSERT statistics.
Definition: pfs_stat.h:652
bool m_has_data
Definition: pfs_stat.h:648
PFS_single_stat m_fetch
FETCH statistics.
Definition: pfs_stat.h:650
PFS_single_stat m_delete
DELETE statistics.
Definition: pfs_stat.h:656
PFS_single_stat m_update
UPDATE statistics.
Definition: pfs_stat.h:654
void reset()
Definition: pfs_stat.h:660
void aggregate(const PFS_table_io_stat *stat)
Definition: pfs_stat.h:668
Statistics for table locks.
Definition: pfs_stat.h:709
void sum(PFS_single_stat *result)
Definition: pfs_stat.h:729
void reset()
Definition: pfs_stat.h:712
void aggregate(const PFS_table_lock_stat *stat)
Definition: pfs_stat.h:720
PFS_single_stat m_stat[COUNT_PFS_TL_LOCK_TYPE]
Definition: pfs_stat.h:710
Statistics for TABLE usage.
Definition: pfs_stat.h:739
void aggregate_lock(const PFS_table_stat *stat)
Definition: pfs_stat.h:801
void aggregate_io(const PFS_table_stat *stat, uint key_count)
Definition: pfs_stat.h:780
void fast_reset_lock()
Definition: pfs_stat.h:774
PFS_table_lock_stat m_lock_stat
Statistics, per lock type.
Definition: pfs_stat.h:750
void fast_reset_io()
Definition: pfs_stat.h:770
void reset_io()
Reset table I/O statistic.
Definition: pfs_stat.h:753
void reset_lock()
Reset table lock statistic.
Definition: pfs_stat.h:762
PFS_table_io_stat m_index_stat[MAX_INDEXES+1]
Statistics, per index.
Definition: pfs_stat.h:745
void reset()
Reset table statistic.
Definition: pfs_stat.h:765
void fast_reset()
Definition: pfs_stat.h:778
static struct PFS_table_stat g_reset_template
Definition: pfs_stat.h:834
void sum(PFS_single_stat *result, uint key_count)
Definition: pfs_stat.h:829
void sum_io(PFS_single_stat *result, uint key_count)
Definition: pfs_stat.h:810
void aggregate(const PFS_table_stat *stat, uint key_count)
Definition: pfs_stat.h:805
void sum_lock(PFS_single_stat *result)
Definition: pfs_stat.h:827
Statistics for transaction usage.
Definition: pfs_stat.h:458
ulonglong m_release_savepoint_count
Definition: pfs_stat.h:464
ulonglong m_savepoint_count
Definition: pfs_stat.h:462
ulonglong count() const
Definition: pfs_stat.h:472
void reset()
Definition: pfs_stat.h:476
PFS_transaction_stat()
Definition: pfs_stat.h:466
PFS_single_stat m_read_write_stat
Definition: pfs_stat.h:459
PFS_single_stat m_read_only_stat
Definition: pfs_stat.h:460
ulonglong m_rollback_to_savepoint_count
Definition: pfs_stat.h:463
void aggregate(const PFS_transaction_stat *stat)
Definition: pfs_stat.h:484