Skip to content

TokuDB Performance Schema Integration

In Percona Server for MySQL Percona Server 5.7.20-18 has implemented TokuDB integration with Performance Schema

This integration can be used for profiling additional TokuDB operations.

TokuDB instruments available in Performance Schema can be seen in PERFORMANCE_SCHEMA.SETUP_INSTRUMENTS table:

mysqlSELECT * FROM performance_schema.setup_instruments WHERE NAME LIKE "%/fti/%";

The output could be the following:

+------------------------------------------------------------+---------+-------+
| NAME                                                       | ENABLED | TIMED |
+------------------------------------------------------------+---------+-------+
| wait/synch/mutex/fti/kibbutz_mutex                         | NO      | NO    |
| wait/synch/mutex/fti/minicron_p_mutex                      | NO      | NO    |
| wait/synch/mutex/fti/queue_result_mutex                    | NO      | NO    |
| wait/synch/mutex/fti/tpool_lock_mutex                      | NO      | NO    |
| wait/synch/mutex/fti/workset_lock_mutex                    | NO      | NO    |
| wait/synch/mutex/fti/bjm_jobs_lock_mutex                   | NO      | NO    |
| wait/synch/mutex/fti/log_internal_lock_mutex               | NO      | NO    |
| wait/synch/mutex/fti/cachetable_ev_thread_lock_mutex       | NO      | NO    |
| wait/synch/mutex/fti/cachetable_disk_nb_mutex              | NO      | NO    |
| wait/synch/mutex/fti/safe_file_size_lock_mutex             | NO      | NO    |
| wait/synch/mutex/fti/cachetable_m_mutex_key                | NO      | NO    |
| wait/synch/mutex/fti/checkpoint_safe_mutex                 | NO      | NO    |
| wait/synch/mutex/fti/ft_ref_lock_mutex                     | NO      | NO    |
| wait/synch/mutex/fti/ft_open_close_lock_mutex              | NO      | NO    |
| wait/synch/mutex/fti/loader_error_mutex                    | NO      | NO    |
| wait/synch/mutex/fti/bfs_mutex                             | NO      | NO    |
| wait/synch/mutex/fti/loader_bl_mutex                       | NO      | NO    |
| wait/synch/mutex/fti/loader_fi_lock_mutex                  | NO      | NO    |
| wait/synch/mutex/fti/loader_out_mutex                      | NO      | NO    |
| wait/synch/mutex/fti/result_output_condition_lock_mutex    | NO      | NO    |
| wait/synch/mutex/fti/block_table_mutex                     | NO      | NO    |
| wait/synch/mutex/fti/rollback_log_node_cache_mutex         | NO      | NO    |
| wait/synch/mutex/fti/txn_lock_mutex                        | NO      | NO    |
| wait/synch/mutex/fti/txn_state_lock_mutex                  | NO      | NO    |
| wait/synch/mutex/fti/txn_child_manager_mutex               | NO      | NO    |
| wait/synch/mutex/fti/txn_manager_lock_mutex                | NO      | NO    |
| wait/synch/mutex/fti/treenode_mutex                        | NO      | NO    |
| wait/synch/mutex/fti/locktree_request_info_mutex           | NO      | NO    |
| wait/synch/mutex/fti/locktree_request_info_retry_mutex_key | NO      | NO    |
| wait/synch/mutex/fti/manager_mutex                         | NO      | NO    |
| wait/synch/mutex/fti/manager_escalation_mutex              | NO      | NO    |
| wait/synch/mutex/fti/db_txn_struct_i_txn_mutex             | NO      | NO    |
| wait/synch/mutex/fti/manager_escalator_mutex               | NO      | NO    |
| wait/synch/mutex/fti/indexer_i_indexer_lock_mutex          | NO      | NO    |
| wait/synch/mutex/fti/indexer_i_indexer_estimate_lock_mutex | NO      | NO    |
| wait/synch/mutex/fti/fti_probe_1                           | NO      | NO    |
| wait/synch/rwlock/fti/multi_operation_lock                 | NO      | NO    |
| wait/synch/rwlock/fti/low_priority_multi_operation_lock    | NO      | NO    |
| wait/synch/rwlock/fti/cachetable_m_list_lock               | NO      | NO    |
| wait/synch/rwlock/fti/cachetable_m_pending_lock_expensive  | NO      | NO    |
| wait/synch/rwlock/fti/cachetable_m_pending_lock_cheap      | NO      | NO    |
| wait/synch/rwlock/fti/cachetable_m_lock                    | NO      | NO    |
| wait/synch/rwlock/fti/result_i_open_dbs_rwlock             | NO      | NO    |
| wait/synch/rwlock/fti/checkpoint_safe_rwlock               | NO      | NO    |
| wait/synch/rwlock/fti/cachetable_value                     | NO      | NO    |
| wait/synch/rwlock/fti/safe_file_size_lock_rwlock           | NO      | NO    |
| wait/synch/rwlock/fti/cachetable_disk_nb_rwlock            | NO      | NO    |
| wait/synch/cond/fti/result_state_cond                      | NO      | NO    |
| wait/synch/cond/fti/bjm_jobs_wait                          | NO      | NO    |
| wait/synch/cond/fti/cachetable_p_refcount_wait             | NO      | NO    |
| wait/synch/cond/fti/cachetable_m_flow_control_cond         | NO      | NO    |
| wait/synch/cond/fti/cachetable_m_ev_thread_cond            | NO      | NO    |
| wait/synch/cond/fti/bfs_cond                               | NO      | NO    |
| wait/synch/cond/fti/result_output_condition                | NO      | NO    |
| wait/synch/cond/fti/manager_m_escalator_done               | NO      | NO    |
| wait/synch/cond/fti/lock_request_m_wait_cond               | NO      | NO    |
| wait/synch/cond/fti/queue_result_cond                      | NO      | NO    |
| wait/synch/cond/fti/ws_worker_wait                         | NO      | NO    |
| wait/synch/cond/fti/rwlock_wait_read                       | NO      | NO    |
| wait/synch/cond/fti/rwlock_wait_write                      | NO      | NO    |
| wait/synch/cond/fti/rwlock_cond                            | NO      | NO    |
| wait/synch/cond/fti/tp_thread_wait                         | NO      | NO    |
| wait/synch/cond/fti/tp_pool_wait_free                      | NO      | NO    |
| wait/synch/cond/fti/frwlock_m_wait_read                    | NO      | NO    |
| wait/synch/cond/fti/kibbutz_k_cond                         | NO      | NO    |
| wait/synch/cond/fti/minicron_p_condvar                     | NO      | NO    |
| wait/synch/cond/fti/locktree_request_info_retry_cv_key     | NO      | NO    |
| wait/io/file/fti/tokudb_data_file                          | YES     | YES   |
| wait/io/file/fti/tokudb_load_file                          | YES     | YES   |
| wait/io/file/fti/tokudb_tmp_file                           | YES     | YES   |
| wait/io/file/fti/tokudb_log_file                           | YES     | YES   |
+------------------------------------------------------------+---------+-------+

For TokuDB-related objects, following clauses can be used when querying Performance Schema tables:

  • WHERE EVENT_NAME LIKE '%fti%' or

  • WHERE NAME LIKE '%fti%'

For example, to get the information about TokuDB related events you can query PERFORMANCE_SCHEMA.events_waits_summary_global_by_event_name like:

mysqlSELECT * FROM performance_schema.events_waits_summary_global_by_event_name WHERE EVENT_NAME LIKE '%fti%';

The output could be the following:

+-----------------------------------------+------------+----------------+----------------+----------------+----------------+
| EVENT_NAME                              | COUNT_STAR | SUM_TIMER_WAIT | MIN_TIMER_WAIT | AVG_TIMER_WAIT | MAX_TIMER_WAIT |
+-----------------------------------------+------------+----------------+----------------+----------------+----------------+
| wait/synch/mutex/fti/kibbutz_mutex      |          0 |              0 |              0 |              0 |              0 |
| wait/synch/mutex/fti/minicron_p_mutex   |          0 |              0 |              0 |              0 |              0 |
| wait/synch/mutex/fti/queue_result_mutex |          0 |              0 |              0 |              0 |              0 |
| wait/synch/mutex/fti/tpool_lock_mutex   |          0 |              0 |              0 |              0 |              0 |
| wait/synch/mutex/fti/workset_lock_mutex |          0 |              0 |              0 |              0 |              0 |
...
| wait/io/file/fti/tokudb_data_file       |         30 |      179862410 |              0 |        5995080 |       68488420 |
| wait/io/file/fti/tokudb_load_file       |          0 |              0 |              0 |              0 |              0 |
| wait/io/file/fti/tokudb_tmp_file        |          0 |              0 |              0 |              0 |              0 |
| wait/io/file/fti/tokudb_log_file        |       1367 |  2925647870145 |              0 |     2140195785 |    12013357720 |
+-----------------------------------------+------------+----------------+----------------+----------------+----------------+
71 rows in set (0.02 sec)

Last update: 2022-09-27