tp_thread_state
表格針對執行緒集區建立以處理連線的每個執行緒都有一個資料列。
tp_thread_state
表格具有下列欄位
TP_GROUP_ID
執行緒集區 ID。
TP_THREAD_NUMBER
執行緒在其執行緒集區中的 ID。
TP_GROUP_ID
和TP_THREAD_NUMBER
一起提供表格中的唯一索引鍵。PROCESS_COUNT
使用此執行緒的陳述式目前正在執行的 10 毫秒間隔。0 表示沒有陳述式正在執行,1 表示它在前 10 毫秒,依此類推。
WAIT_TYPE
執行緒等待的類型。
NULL
表示執行緒未被封鎖。否則,執行緒會因呼叫thd_wait_begin()
而被封鎖,且該值會指定等待類型。tp_thread_group_stats
表格的
欄會累積每個等待類型的計數。xxx
_WAITWAIT_TYPE
值是一個描述等待類型的字串,如下表所示。表格 29.4 tp_thread_state 表格 WAIT_TYPE 值
等待類型 意義 THD_WAIT_SLEEP
正在等待睡眠 THD_WAIT_DISKIO
正在等待磁碟 I/O THD_WAIT_ROW_LOCK
正在等待資料列鎖定 THD_WAIT_GLOBAL_LOCK
正在等待全域鎖定 THD_WAIT_META_DATA_LOCK
正在等待中繼資料鎖定 THD_WAIT_TABLE_LOCK
正在等待表格鎖定 THD_WAIT_USER_LOCK
正在等待使用者鎖定 THD_WAIT_BINLOG
正在等待二進位記錄檔 THD_WAIT_GROUP_COMMIT
正在等待群組提交 THD_WAIT_SYNC
正在等待 fsync TP_THREAD_TYPE
執行緒的類型。此欄中顯示的值是
CONNECTION_HANDLER_WORKER_THREAD
、LISTENER_WORKER_THREAD
、QUERY_WORKER_THREAD
或TIMER_WORKER_THREAD
的其中之一。THREAD_ID
此執行緒的唯一識別符。該值與效能架構 (Performance Schema)
threads
資料表中THREAD_ID
欄位所使用的值相同。TIME_OF_ATTACH
:時間戳記,顯示執行緒附加的時間,如果附加到連線;否則為
NULL
。MARKED_STALLED
:如果此執行緒已被停滯檢查程式執行緒標記為停滯,則此值為
True
。STATE
:可能的值取決於執行緒的類型,如
TP_THREAD_TYPE
欄位所示。對於工作執行緒 (
QUERY_WORKER_THREAD
),此值為Managing
、Polling
、Processing Direct
、Processing Queued
、Sleeping Consumer
或Sleeping Reserve
其中之一。對於連線處理常式執行緒 (
CONNECTION_HANDLER_WORKER_THREAD
),此值為CH Processing
、CH Sleeping Timed
或CH Sleeping Indefinite
其中之一。對於停滯檢查程式執行緒 (
TIMER_WORKER_THREAD
),此值為SC Checking
、SC Sleeping Short
或SC Sleeping Long
其中之一。
EVENT_COUNT
:此執行緒處理的累積事件數量。
ACCUMULATED_EVENT_TIME
:處理事件所花費的實際時間。
EXEC_COUNT
:傳遞到伺服器以執行查詢(語句)的累積數量。
ACCUMULATED_EXEC_TIME
:伺服器處理查詢所花費的實際時間。
tp_thread_state
資料表有一個索引;這是 TP_GROUP_ID
和 TP_THREAD_NUMBER
欄位的唯一索引。
不允許對 tp_thread_state
資料表使用 TRUNCATE TABLE
。