in storage/perfschema/ha_perfschema.cc [155:1359]
static bool pfs_show_status(handlerton *, THD *thd, stat_print_fn *print,
enum ha_stat_type stat) {
DBUG_TRACE;
/*
Note about naming conventions:
- Internal buffers exposed as a table in the performance schema are named
after the table, as in 'events_waits_current'
- Internal buffers not exposed by a table are named with parenthesis,
as in '(pfs_mutex_class)'.
*/
if (stat != HA_ENGINE_STATUS) {
return false;
}
size_t total_memory = 0;
for (int i = 0; /* empty */; i++) {
const char *name;
size_t size;
switch (i) {
case 0:
name = "events_waits_current.size";
size = sizeof(PFS_events_waits);
break;
case 1:
name = "events_waits_current.count";
size = WAIT_STACK_SIZE * global_thread_container.get_row_count();
break;
case 2:
name = "events_waits_history.size";
size = sizeof(PFS_events_waits);
break;
case 3:
name = "events_waits_history.count";
size = events_waits_history_per_thread *
global_thread_container.get_row_count();
break;
case 4:
name = "events_waits_history.memory";
size = events_waits_history_per_thread *
global_thread_container.get_row_count() *
sizeof(PFS_events_waits);
total_memory += size;
break;
case 5:
name = "events_waits_history_long.size";
size = sizeof(PFS_events_waits);
break;
case 6:
name = "events_waits_history_long.count";
size = events_waits_history_long_size;
break;
case 7:
name = "events_waits_history_long.memory";
size = events_waits_history_long_size * sizeof(PFS_events_waits);
total_memory += size;
break;
case 8:
name = "(pfs_mutex_class).size";
size = sizeof(PFS_mutex_class);
break;
case 9:
name = "(pfs_mutex_class).count";
size = mutex_class_max;
break;
case 10:
name = "(pfs_mutex_class).memory";
size = mutex_class_max * sizeof(PFS_mutex_class);
total_memory += size;
break;
case 11:
name = "(pfs_rwlock_class).size";
size = sizeof(PFS_rwlock_class);
break;
case 12:
name = "(pfs_rwlock_class).count";
size = rwlock_class_max;
break;
case 13:
name = "(pfs_rwlock_class).memory";
size = rwlock_class_max * sizeof(PFS_rwlock_class);
total_memory += size;
break;
case 14:
name = "(pfs_cond_class).size";
size = sizeof(PFS_cond_class);
break;
case 15:
name = "(pfs_cond_class).count";
size = cond_class_max;
break;
case 16:
name = "(pfs_cond_class).memory";
size = cond_class_max * sizeof(PFS_cond_class);
total_memory += size;
break;
case 17:
name = "(pfs_thread_class).size";
size = sizeof(PFS_thread_class);
break;
case 18:
name = "(pfs_thread_class).count";
size = thread_class_max;
break;
case 19:
name = "(pfs_thread_class).memory";
size = thread_class_max * sizeof(PFS_thread_class);
total_memory += size;
break;
case 20:
name = "(pfs_file_class).size";
size = sizeof(PFS_file_class);
break;
case 21:
name = "(pfs_file_class).count";
size = file_class_max;
break;
case 22:
name = "(pfs_file_class).memory";
size = file_class_max * sizeof(PFS_file_class);
total_memory += size;
break;
case 23:
name = "mutex_instances.size";
size = global_mutex_container.get_row_size();
break;
case 24:
name = "mutex_instances.count";
size = global_mutex_container.get_row_count();
break;
case 25:
name = "mutex_instances.memory";
size = global_mutex_container.get_memory();
total_memory += size;
break;
case 26:
name = "rwlock_instances.size";
size = global_rwlock_container.get_row_size();
break;
case 27:
name = "rwlock_instances.count";
size = global_rwlock_container.get_row_count();
break;
case 28:
name = "rwlock_instances.memory";
size = global_rwlock_container.get_memory();
total_memory += size;
break;
case 29:
name = "cond_instances.size";
size = global_cond_container.get_row_size();
break;
case 30:
name = "cond_instances.count";
size = global_cond_container.get_row_count();
break;
case 31:
name = "cond_instances.memory";
size = global_cond_container.get_memory();
total_memory += size;
break;
case 32:
name = "threads.size";
size = global_thread_container.get_row_size();
break;
case 33:
name = "threads.count";
size = global_thread_container.get_row_count();
break;
case 34:
name = "threads.memory";
size = global_thread_container.get_memory();
total_memory += size;
break;
case 35:
name = "file_instances.size";
size = global_file_container.get_row_size();
break;
case 36:
name = "file_instances.count";
size = global_file_container.get_row_count();
break;
case 37:
name = "file_instances.memory";
size = global_file_container.get_memory();
total_memory += size;
break;
case 38:
name = "(pfs_file_handle).size";
size = sizeof(PFS_file *);
break;
case 39:
name = "(pfs_file_handle).count";
size = file_handle_max;
break;
case 40:
name = "(pfs_file_handle).memory";
size = file_handle_max * sizeof(PFS_file *);
total_memory += size;
break;
case 41:
name = "events_waits_summary_by_thread_by_event_name.size";
size = sizeof(PFS_single_stat);
break;
case 42:
name = "events_waits_summary_by_thread_by_event_name.count";
size = global_thread_container.get_row_count() * wait_class_max;
break;
case 43:
name = "events_waits_summary_by_thread_by_event_name.memory";
size = global_thread_container.get_row_count() * wait_class_max *
sizeof(PFS_single_stat);
total_memory += size;
break;
case 44:
name = "(pfs_table_share).size";
size = global_table_share_container.get_row_size();
break;
case 45:
name = "(pfs_table_share).count";
size = global_table_share_container.get_row_count();
break;
case 46:
name = "(pfs_table_share).memory";
size = global_table_share_container.get_memory();
total_memory += size;
break;
case 47:
name = "(pfs_table).size";
size = global_table_container.get_row_size();
break;
case 48:
name = "(pfs_table).count";
size = global_table_container.get_row_count();
break;
case 49:
name = "(pfs_table).memory";
size = global_table_container.get_memory();
total_memory += size;
break;
case 50:
name = "setup_actors.size";
size = global_setup_actor_container.get_row_size();
break;
case 51:
name = "setup_actors.count";
size = global_setup_actor_container.get_row_count();
break;
case 52:
name = "setup_actors.memory";
size = global_setup_actor_container.get_memory();
total_memory += size;
break;
case 53:
name = "setup_objects.size";
size = global_setup_object_container.get_row_size();
break;
case 54:
name = "setup_objects.count";
size = global_setup_object_container.get_row_count();
break;
case 55:
name = "setup_objects.memory";
size = global_setup_object_container.get_memory();
total_memory += size;
break;
case 56:
name = "(pfs_account).size";
size = global_account_container.get_row_size();
break;
case 57:
name = "(pfs_account).count";
size = global_account_container.get_row_count();
break;
case 58:
name = "(pfs_account).memory";
size = global_account_container.get_memory();
total_memory += size;
break;
case 59:
name = "events_waits_summary_by_account_by_event_name.size";
size = sizeof(PFS_single_stat);
break;
case 60:
name = "events_waits_summary_by_account_by_event_name.count";
size = global_account_container.get_row_count() * wait_class_max;
break;
case 61:
name = "events_waits_summary_by_account_by_event_name.memory";
size = global_account_container.get_row_count() * wait_class_max *
sizeof(PFS_single_stat);
total_memory += size;
break;
case 62:
name = "events_waits_summary_by_user_by_event_name.size";
size = sizeof(PFS_single_stat);
break;
case 63:
name = "events_waits_summary_by_user_by_event_name.count";
size = global_user_container.get_row_count() * wait_class_max;
break;
case 64:
name = "events_waits_summary_by_user_by_event_name.memory";
size = global_user_container.get_row_count() * wait_class_max *
sizeof(PFS_single_stat);
total_memory += size;
break;
case 65:
name = "events_waits_summary_by_host_by_event_name.size";
size = sizeof(PFS_single_stat);
break;
case 66:
name = "events_waits_summary_by_host_by_event_name.count";
size = global_host_container.get_row_count() * wait_class_max;
break;
case 67:
name = "events_waits_summary_by_host_by_event_name.memory";
size = global_host_container.get_row_count() * wait_class_max *
sizeof(PFS_single_stat);
total_memory += size;
break;
case 68:
name = "(pfs_user).size";
size = global_user_container.get_row_size();
break;
case 69:
name = "(pfs_user).count";
size = global_user_container.get_row_count();
break;
case 70:
name = "(pfs_user).memory";
size = global_user_container.get_memory();
total_memory += size;
break;
case 71:
name = "(pfs_host).size";
size = global_host_container.get_row_size();
break;
case 72:
name = "(pfs_host).count";
size = global_host_container.get_row_count();
break;
case 73:
name = "(pfs_host).memory";
size = global_host_container.get_memory();
total_memory += size;
break;
case 74:
name = "(pfs_stage_class).size";
size = sizeof(PFS_stage_class);
break;
case 75:
name = "(pfs_stage_class).count";
size = stage_class_max;
break;
case 76:
name = "(pfs_stage_class).memory";
size = stage_class_max * sizeof(PFS_stage_class);
total_memory += size;
break;
case 77:
name = "events_stages_history.size";
size = sizeof(PFS_events_stages);
break;
case 78:
name = "events_stages_history.count";
size = events_stages_history_per_thread *
global_thread_container.get_row_count();
break;
case 79:
name = "events_stages_history.memory";
size = events_stages_history_per_thread *
global_thread_container.get_row_count() *
sizeof(PFS_events_stages);
total_memory += size;
break;
case 80:
name = "events_stages_history_long.size";
size = sizeof(PFS_events_stages);
break;
case 81:
name = "events_stages_history_long.count";
size = events_stages_history_long_size;
break;
case 82:
name = "events_stages_history_long.memory";
size = events_stages_history_long_size * sizeof(PFS_events_stages);
total_memory += size;
break;
case 83:
name = "events_stages_summary_by_thread_by_event_name.size";
size = sizeof(PFS_stage_stat);
break;
case 84:
name = "events_stages_summary_by_thread_by_event_name.count";
size = global_thread_container.get_row_count() * stage_class_max;
break;
case 85:
name = "events_stages_summary_by_thread_by_event_name.memory";
size = global_thread_container.get_row_count() * stage_class_max *
sizeof(PFS_stage_stat);
total_memory += size;
break;
case 86:
name = "events_stages_summary_global_by_event_name.size";
size = sizeof(PFS_stage_stat);
break;
case 87:
name = "events_stages_summary_global_by_event_name.count";
size = stage_class_max;
break;
case 88:
name = "events_stages_summary_global_by_event_name.memory";
size = stage_class_max * sizeof(PFS_stage_stat);
total_memory += size;
break;
case 89:
name = "events_stages_summary_by_account_by_event_name.size";
size = sizeof(PFS_stage_stat);
break;
case 90:
name = "events_stages_summary_by_account_by_event_name.count";
size = global_account_container.get_row_count() * stage_class_max;
break;
case 91:
name = "events_stages_summary_by_account_by_event_name.memory";
size = global_account_container.get_row_count() * stage_class_max *
sizeof(PFS_stage_stat);
total_memory += size;
break;
case 92:
name = "events_stages_summary_by_user_by_event_name.size";
size = sizeof(PFS_stage_stat);
break;
case 93:
name = "events_stages_summary_by_user_by_event_name.count";
size = global_user_container.get_row_count() * stage_class_max;
break;
case 94:
name = "events_stages_summary_by_user_by_event_name.memory";
size = global_user_container.get_row_count() * stage_class_max *
sizeof(PFS_stage_stat);
total_memory += size;
break;
case 95:
name = "events_stages_summary_by_host_by_event_name.size";
size = sizeof(PFS_stage_stat);
break;
case 96:
name = "events_stages_summary_by_host_by_event_name.count";
size = global_host_container.get_row_count() * stage_class_max;
break;
case 97:
name = "events_stages_summary_by_host_by_event_name.memory";
size = global_host_container.get_row_count() * stage_class_max *
sizeof(PFS_stage_stat);
total_memory += size;
break;
case 98:
name = "(pfs_statement_class).size";
size = sizeof(PFS_statement_class);
break;
case 99:
name = "(pfs_statement_class).count";
size = statement_class_max;
break;
case 100:
name = "(pfs_statement_class).memory";
size = statement_class_max * sizeof(PFS_statement_class);
total_memory += size;
break;
case 101:
name = "events_statements_history.size";
size = sizeof(PFS_events_statements);
break;
case 102:
name = "events_statements_history.count";
size = events_statements_history_per_thread *
global_thread_container.get_row_count();
break;
case 103:
name = "events_statements_history.memory";
size = events_statements_history_per_thread *
global_thread_container.get_row_count() *
sizeof(PFS_events_statements);
total_memory += size;
break;
case 104:
name = "events_statements_history_long.size";
size = sizeof(PFS_events_statements);
break;
case 105:
name = "events_statements_history_long.count";
size = events_statements_history_long_size;
break;
case 106:
name = "events_statements_history_long.memory";
size = events_statements_history_long_size *
(sizeof(PFS_events_statements));
total_memory += size;
break;
case 107:
name = "events_statements_summary_by_thread_by_event_name.size";
size = sizeof(PFS_statement_stat);
break;
case 108:
name = "events_statements_summary_by_thread_by_event_name.count";
size = global_thread_container.get_row_count() * statement_class_max;
break;
case 109:
name = "events_statements_summary_by_thread_by_event_name.memory";
size = global_thread_container.get_row_count() * statement_class_max *
sizeof(PFS_statement_stat);
total_memory += size;
break;
case 110:
name = "events_statements_summary_global_by_event_name.size";
size = sizeof(PFS_statement_stat);
break;
case 111:
name = "events_statements_summary_global_by_event_name.count";
size = statement_class_max;
break;
case 112:
name = "events_statements_summary_global_by_event_name.memory";
size = statement_class_max * sizeof(PFS_statement_stat);
total_memory += size;
break;
case 113:
name = "events_statements_summary_by_account_by_event_name.size";
size = sizeof(PFS_statement_stat);
break;
case 114:
name = "events_statements_summary_by_account_by_event_name.count";
size = global_account_container.get_row_count() * statement_class_max;
break;
case 115:
name = "events_statements_summary_by_account_by_event_name.memory";
size = global_account_container.get_row_count() * statement_class_max *
sizeof(PFS_statement_stat);
total_memory += size;
break;
case 116:
name = "events_statements_summary_by_user_by_event_name.size";
size = sizeof(PFS_statement_stat);
break;
case 117:
name = "events_statements_summary_by_user_by_event_name.count";
size = global_user_container.get_row_count() * statement_class_max;
break;
case 118:
name = "events_statements_summary_by_user_by_event_name.memory";
size = global_user_container.get_row_count() * statement_class_max *
sizeof(PFS_statement_stat);
total_memory += size;
break;
case 119:
name = "events_statements_summary_by_host_by_event_name.size";
size = sizeof(PFS_statement_stat);
break;
case 120:
name = "events_statements_summary_by_host_by_event_name.count";
size = global_host_container.get_row_count() * statement_class_max;
break;
case 121:
name = "events_statements_summary_by_host_by_event_name.memory";
size = global_host_container.get_row_count() * statement_class_max *
sizeof(PFS_statement_stat);
total_memory += size;
break;
case 122:
name = "events_statements_current.size";
size = sizeof(PFS_events_statements);
break;
case 123:
name = "events_statements_current.count";
size = global_thread_container.get_row_count() * statement_stack_max;
break;
case 124:
name = "events_statements_current.memory";
size = global_thread_container.get_row_count() * statement_stack_max *
sizeof(PFS_events_statements);
total_memory += size;
break;
case 125:
name = "(pfs_socket_class).size";
size = sizeof(PFS_socket_class);
break;
case 126:
name = "(pfs_socket_class).count";
size = socket_class_max;
break;
case 127:
name = "(pfs_socket_class).memory";
size = socket_class_max * sizeof(PFS_socket_class);
total_memory += size;
break;
case 128:
name = "socket_instances.size";
size = global_socket_container.get_row_size();
break;
case 129:
name = "socket_instances.count";
size = global_socket_container.get_row_count();
break;
case 130:
name = "socket_instances.memory";
size = global_socket_container.get_memory();
total_memory += size;
break;
case 131:
name = "events_statements_summary_by_digest.size";
size = sizeof(PFS_statements_digest_stat);
break;
case 132:
name = "events_statements_summary_by_digest.count";
size = digest_max;
break;
case 133:
name = "events_statements_summary_by_digest.memory";
size = digest_max * (sizeof(PFS_statements_digest_stat));
total_memory += size;
break;
case 134:
name = "events_statements_summary_by_program.size";
size = global_program_container.get_row_size();
break;
case 135:
name = "events_statements_summary_by_program.count";
size = global_program_container.get_row_count();
break;
case 136:
name = "events_statements_summary_by_program.memory";
size = global_program_container.get_memory();
total_memory += size;
break;
case 137:
name = "session_connect_attrs.size";
size = global_thread_container.get_row_count();
break;
case 138:
name = "session_connect_attrs.count";
size = session_connect_attrs_size_per_thread;
break;
case 139:
name = "session_connect_attrs.memory";
size = global_thread_container.get_row_count() *
session_connect_attrs_size_per_thread;
total_memory += size;
break;
case 140:
name = "prepared_statements_instances.size";
size = global_prepared_stmt_container.get_row_size();
break;
case 141:
name = "prepared_statements_instances.count";
size = global_prepared_stmt_container.get_row_count();
break;
case 142:
name = "prepared_statements_instances.memory";
size = global_prepared_stmt_container.get_memory();
total_memory += size;
break;
case 143:
name = "(account_hash).count";
size = account_hash.count;
break;
case 144:
name = "(account_hash).size";
size = account_hash.size;
break;
case 145:
name = "(digest_hash).count";
size = digest_hash.count;
break;
case 146:
name = "(digest_hash).size";
size = digest_hash.size;
break;
case 147:
name = "(filename_hash).count";
size = filename_hash.count;
break;
case 148:
name = "(filename_hash).size";
size = filename_hash.size;
break;
case 149:
name = "(host_hash).count";
size = host_hash.count;
break;
case 150:
name = "(host_hash).size";
size = host_hash.size;
break;
case 151:
name = "(setup_actor_hash).count";
size = setup_actor_hash.count;
break;
case 152:
name = "(setup_actor_hash).size";
size = setup_actor_hash.size;
break;
case 153:
name = "(setup_object_hash).count";
size = setup_object_hash.count;
break;
case 154:
name = "(setup_object_hash).size";
size = setup_object_hash.size;
break;
case 155:
name = "(table_share_hash).count";
size = table_share_hash.count;
break;
case 156:
name = "(table_share_hash).size";
size = table_share_hash.size;
break;
case 157:
name = "(user_hash).count";
size = user_hash.count;
break;
case 158:
name = "(user_hash).size";
size = user_hash.size;
break;
case 159:
name = "(program_hash).count";
size = program_hash.count;
break;
case 160:
name = "(program_hash).size";
size = program_hash.size;
break;
case 161:
/*
This is not a performance_schema buffer,
the data is maintained in the server,
in hostname_cache.
Print the size only, there are:
- no host_cache.count
- no host_cache.memory
*/
name = "host_cache.size";
size = sizeof(Host_entry);
break;
case 162:
name = "(pfs_memory_class).row_size";
size = sizeof(PFS_memory_class);
break;
case 163:
name = "(pfs_memory_class).row_count";
size = memory_class_max;
break;
case 164:
name = "(pfs_memory_class).memory";
size = memory_class_max * sizeof(PFS_memory_class);
total_memory += size;
break;
case 165:
name = "memory_summary_by_thread_by_event_name.row_size";
size = sizeof(PFS_memory_safe_stat);
break;
case 166:
name = "memory_summary_by_thread_by_event_name.row_count";
size = global_thread_container.get_row_count() * memory_class_max;
break;
case 167:
name = "memory_summary_by_thread_by_event_name.memory";
size = global_thread_container.get_row_count() * memory_class_max *
sizeof(PFS_memory_safe_stat);
total_memory += size;
break;
case 168:
name = "memory_summary_global_by_event_name.row_size";
size = sizeof(PFS_memory_shared_stat);
break;
case 169:
name = "memory_summary_global_by_event_name.row_count";
size = memory_class_max;
break;
case 170:
name = "memory_summary_global_by_event_name.memory";
size = memory_class_max * sizeof(PFS_memory_shared_stat);
total_memory += size;
break;
case 171:
name = "memory_summary_by_account_by_event_name.row_size";
size = sizeof(PFS_memory_shared_stat);
break;
case 172:
name = "memory_summary_by_account_by_event_name.row_count";
size = global_account_container.get_row_count() * memory_class_max;
break;
case 173:
name = "memory_summary_by_account_by_event_name.memory";
size = global_account_container.get_row_count() * memory_class_max *
sizeof(PFS_memory_shared_stat);
total_memory += size;
break;
case 174:
name = "memory_summary_by_user_by_event_name.row_size";
size = sizeof(PFS_memory_shared_stat);
break;
case 175:
name = "memory_summary_by_user_by_event_name.row_count";
size = global_user_container.get_row_count() * memory_class_max;
break;
case 176:
name = "memory_summary_by_user_by_event_name.memory";
size = global_user_container.get_row_count() * memory_class_max *
sizeof(PFS_memory_shared_stat);
total_memory += size;
break;
case 177:
name = "memory_summary_by_host_by_event_name.row_size";
size = sizeof(PFS_memory_shared_stat);
break;
case 178:
name = "memory_summary_by_host_by_event_name.row_count";
size = global_host_container.get_row_count() * memory_class_max;
break;
case 179:
name = "memory_summary_by_host_by_event_name.memory";
size = global_host_container.get_row_count() * memory_class_max *
sizeof(PFS_memory_shared_stat);
total_memory += size;
break;
case 180:
name = "metadata_locks.row_size";
size = global_mdl_container.get_row_size();
break;
case 181:
name = "metadata_locks.row_count";
size = global_mdl_container.get_row_count();
break;
case 182:
name = "metadata_locks.memory";
size = global_mdl_container.get_memory();
total_memory += size;
break;
case 183:
name = "events_transactions_history.size";
size = sizeof(PFS_events_transactions);
break;
case 184:
name = "events_transactions_history.count";
size = events_transactions_history_per_thread *
global_thread_container.get_row_count();
break;
case 185:
name = "events_transactions_history.memory";
size = events_transactions_history_per_thread *
global_thread_container.get_row_count() *
sizeof(PFS_events_transactions);
total_memory += size;
break;
case 186:
name = "events_transactions_history_long.size";
size = sizeof(PFS_events_transactions);
break;
case 187:
name = "events_transactions_history_long.count";
size = events_transactions_history_long_size;
break;
case 188:
name = "events_transactions_history_long.memory";
size = events_transactions_history_long_size *
sizeof(PFS_events_transactions);
total_memory += size;
break;
case 189:
name = "events_transactions_summary_by_thread_by_event_name.size";
size = sizeof(PFS_transaction_stat);
break;
case 190:
name = "events_transactions_summary_by_thread_by_event_name.count";
size = global_thread_container.get_row_count() * transaction_class_max;
break;
case 191:
name = "events_transactions_summary_by_thread_by_event_name.memory";
size = global_thread_container.get_row_count() * transaction_class_max *
sizeof(PFS_transaction_stat);
total_memory += size;
break;
case 192:
name = "events_transactions_summary_by_account_by_event_name.size";
size = sizeof(PFS_transaction_stat);
break;
case 193:
name = "events_transactions_summary_by_account_by_event_name.count";
size = global_account_container.get_row_count() * transaction_class_max;
break;
case 194:
name = "events_transactions_summary_by_account_by_event_name.memory";
size = global_account_container.get_row_count() *
transaction_class_max * sizeof(PFS_transaction_stat);
total_memory += size;
break;
case 195:
name = "events_transactions_summary_by_user_by_event_name.size";
size = sizeof(PFS_transaction_stat);
break;
case 196:
name = "events_transactions_summary_by_user_by_event_name.count";
size = global_user_container.get_row_count() * transaction_class_max;
break;
case 197:
name = "events_transactions_summary_by_user_by_event_name.memory";
size = global_user_container.get_row_count() * transaction_class_max *
sizeof(PFS_transaction_stat);
total_memory += size;
break;
case 198:
name = "events_transactions_summary_by_host_by_event_name.size";
size = sizeof(PFS_transaction_stat);
break;
case 199:
name = "events_transactions_summary_by_host_by_event_name.count";
size = global_host_container.get_row_count() * transaction_class_max;
break;
case 200:
name = "events_transactions_summary_by_host_by_event_name.memory";
size = global_host_container.get_row_count() * transaction_class_max *
sizeof(PFS_transaction_stat);
total_memory += size;
break;
case 201:
name = "table_lock_waits_summary_by_table.size";
size = global_table_share_lock_container.get_row_size();
break;
case 202:
name = "table_lock_waits_summary_by_table.count";
size = global_table_share_lock_container.get_row_count();
break;
case 203:
name = "table_lock_waits_summary_by_table.memory";
size = global_table_share_lock_container.get_memory();
total_memory += size;
break;
case 204:
name = "table_io_waits_summary_by_index_usage.size";
size = global_table_share_index_container.get_row_size();
break;
case 205:
name = "table_io_waits_summary_by_index_usage.count";
size = global_table_share_index_container.get_row_count();
break;
case 206:
name = "table_io_waits_summary_by_index_usage.memory";
size = global_table_share_index_container.get_memory();
total_memory += size;
break;
case 207:
name = "(history_long_statements_digest_token_array).count";
size = events_statements_history_long_size;
break;
case 208:
name = "(history_long_statements_digest_token_array).size";
size = pfs_max_digest_length;
break;
case 209:
name = "(history_long_statements_digest_token_array).memory";
size = events_statements_history_long_size * pfs_max_digest_length;
total_memory += size;
break;
case 210:
name = "(history_statements_digest_token_array).count";
size = global_thread_container.get_row_count() *
events_statements_history_per_thread;
break;
case 211:
name = "(history_statements_digest_token_array).size";
size = pfs_max_digest_length;
break;
case 212:
name = "(history_statements_digest_token_array).memory";
size = global_thread_container.get_row_count() *
events_statements_history_per_thread * pfs_max_digest_length;
total_memory += size;
break;
case 213:
name = "(current_statements_digest_token_array).count";
size = global_thread_container.get_row_count() * statement_stack_max;
break;
case 214:
name = "(current_statements_digest_token_array).size";
size = pfs_max_digest_length;
break;
case 215:
name = "(current_statements_digest_token_array).memory";
size = global_thread_container.get_row_count() * statement_stack_max *
pfs_max_digest_length;
total_memory += size;
break;
case 216:
name = "(history_long_statements_text_array).count";
size = events_statements_history_long_size;
break;
case 217:
name = "(history_long_statements_text_array).size";
size = pfs_max_sqltext;
break;
case 218:
name = "(history_long_statements_text_array).memory";
size = events_statements_history_long_size * pfs_max_sqltext;
total_memory += size;
break;
case 219:
name = "(history_statements_text_array).count";
size = global_thread_container.get_row_count() *
events_statements_history_per_thread;
break;
case 220:
name = "(history_statements_text_array).size";
size = pfs_max_sqltext;
break;
case 221:
name = "(history_statements_text_array).memory";
size = global_thread_container.get_row_count() *
events_statements_history_per_thread * pfs_max_sqltext;
total_memory += size;
break;
case 222:
name = "(current_statements_text_array).count";
size = global_thread_container.get_row_count() * statement_stack_max;
break;
case 223:
name = "(current_statements_text_array).size";
size = pfs_max_sqltext;
break;
case 224:
name = "(current_statements_text_array).memory";
size = global_thread_container.get_row_count() * statement_stack_max *
pfs_max_sqltext;
total_memory += size;
break;
case 225:
name = "(statements_digest_token_array).count";
size = digest_max;
break;
case 226:
name = "(statements_digest_token_array).size";
size = pfs_max_digest_length;
break;
case 227:
name = "(statements_digest_token_array).memory";
size = digest_max * pfs_max_digest_length;
total_memory += size;
break;
case 228:
name = "events_errors_summary_by_thread_by_error.size";
size = size_of_session_error_stat_buffer();
break;
case 229:
name = "events_errors_summary_by_thread_by_error.count";
size = global_thread_container.get_row_count() * error_class_max;
break;
case 230:
name = "events_errors_summary_by_thread_by_error.memory";
size = global_thread_container.get_row_count() * error_class_max *
size_of_session_error_stat_buffer();
total_memory += size;
break;
case 231:
name = "events_errors_summary_by_account_by_error.size";
size = size_of_session_error_stat_buffer();
break;
case 232:
name = "events_errors_summary_by_account_by_error.count";
size = global_account_container.get_row_count() * error_class_max;
break;
case 233:
name = "events_errors_summary_by_account_by_error.memory";
size = global_account_container.get_row_count() * error_class_max *
size_of_session_error_stat_buffer();
total_memory += size;
break;
case 234:
name = "events_errors_summary_by_user_by_error.size";
size = size_of_session_error_stat_buffer();
break;
case 235:
name = "events_errors_summary_by_user_by_error.count";
size = global_user_container.get_row_count() * error_class_max;
break;
case 236:
name = "events_errors_summary_by_user_by_error.memory";
size = global_user_container.get_row_count() * error_class_max *
size_of_session_error_stat_buffer();
total_memory += size;
break;
case 237:
name = "events_errors_summary_by_host_by_error.size";
size = size_of_session_error_stat_buffer();
break;
case 238:
name = "events_errors_summary_by_host_by_error.count";
size = global_host_container.get_row_count() * error_class_max;
break;
case 239:
name = "events_errors_summary_by_host_by_error.memory";
size = global_host_container.get_row_count() * error_class_max *
size_of_session_error_stat_buffer();
total_memory += size;
break;
case 240:
name = "events_errors_summary_global_by_error.size";
size = size_of_global_error_stat_buffer();
break;
case 241:
name = "events_errors_summary_global_by_error.count";
size = error_class_max;
break;
case 242:
name = "events_errors_summary_global_by_error.memory";
size = size_of_global_error_stat_buffer() * error_class_max;
total_memory += size;
break;
case 243:
name = "(pfs_buffer_scalable_container).count";
size = builtin_memory_scalable_buffer.m_stat.m_alloc_count -
builtin_memory_scalable_buffer.m_stat.m_free_count;
break;
case 244:
name = "(pfs_buffer_scalable_container).memory";
size = builtin_memory_scalable_buffer.m_stat.m_alloc_size -
builtin_memory_scalable_buffer.m_stat.m_free_size;
total_memory += size;
break;
case 245:
name = "(max_global_server_errors).count";
size = max_global_server_errors;
break;
case 246:
name = "(max_session_server_errors).count";
size = max_session_server_errors;
break;
case 247:
name = "(pfs_meter_class).size";
size = sizeof(PFS_meter_class);
break;
case 248:
name = "(pfs_meter_class).count";
size = meter_class_max;
break;
case 249:
name = "(pfs_meter_class).memory";
size = meter_class_max * sizeof(PFS_meter_class);
total_memory += size;
break;
case 250:
name = "(pfs_metric_class).size";
size = sizeof(PFS_metric_class);
break;
case 251:
name = "(pfs_metric_class).count";
size = metric_class_max;
break;
case 252:
name = "(pfs_metric_class).memory";
size = metric_class_max * sizeof(PFS_metric_class);
total_memory += size;
break;
case 253:
name = "(pfs_logger_class).size";
size = sizeof(PFS_logger_class);
break;
case 254:
name = "(pfs_logger_class).count";
size = logger_class_max;
break;
case 255:
name = "(pfs_logger_class).memory";
size = logger_class_max * sizeof(PFS_logger_class);
total_memory += size;
break;
/*
This case must be last,
for aggregation in total_memory.
*/
case 256:
name = "performance_schema.memory";
size = total_memory;
break;
default:
goto end;
break;
}
char buf[1024];
const uint buflen = (uint)(longlong10_to_str(size, buf, 10) - buf);
if (print(thd, PERFORMANCE_SCHEMA_str.str, PERFORMANCE_SCHEMA_str.length,
name, strlen(name), buf, buflen)) {
return true;
}
}
end:
return false;
}