The Performance Schema table described here is available as of MySQL 8.0.14. Prior to MySQL 8.0.14, use the corresponding INFORMATION_SCHEMA
table instead; see Section 26.5.4, “The INFORMATION_SCHEMA TP_THREAD_STATE Table”.
The tp_thread_state
table has one row per thread created by the thread pool to handle connections.
The tp_thread_state
table has these columns:
TP_GROUP_ID
The thread group ID.
TP_THREAD_NUMBER
The ID of the thread within its thread group. TP_GROUP_ID
and TP_THREAD_NUMBER
together provide a unique key within the table.
PROCESS_COUNT
The 10ms interval in which the statement that uses this thread is currently executing. 0 means no statement is executing, 1 means it is in the first 10ms, and so forth.
WAIT_TYPE
The type of wait for the thread. NULL
means the thread is not blocked. Otherwise, the thread is blocked by a call to thd_wait_begin()
and the value specifies the type of wait. The
columns of the xxx
_WAITtp_thread_group_stats
table accumulate counts for each wait type.
The WAIT_TYPE
value is a string that describes the type of wait, as shown in the following table.
Table 27.4 tp_thread_state Table WAIT_TYPE Values
Wait Type | Meaning |
---|---|
THD_WAIT_SLEEP | Waiting for sleep |
THD_WAIT_DISKIO | Waiting for Disk IO |
THD_WAIT_ROW_LOCK | Waiting for row lock |
THD_WAIT_GLOBAL_LOCK | Waiting for global lock |
THD_WAIT_META_DATA_LOCK | Waiting for metadata lock |
THD_WAIT_TABLE_LOCK | Waiting for table lock |
THD_WAIT_USER_LOCK | Waiting for user lock |
THD_WAIT_BINLOG | Waiting for binlog |
THD_WAIT_GROUP_COMMIT | Waiting for group commit |
THD_WAIT_SYNC | Waiting for fsync |
The tp_thread_state
table has these indexes:
Unique index on (TP_GROUP_ID
, TP_THREAD_NUMBER
)
TRUNCATE TABLE
is not permitted for the tp_thread_state
table.