cluster_transactions
資料表顯示 NDB Cluster 中所有進行中的交易的相關資訊。
cluster_transactions
資料表包含以下欄位
node_id
交易協調器的節點 ID
block_instance
TC 區塊執行個體
transid
交易 ID
state
作業狀態 (請參閱文字以瞭解可能的值)
count_operations
交易中有狀態主索引鍵作業的數量 (包括帶有鎖定的讀取,以及 DML 作業)
outstanding_operations
仍在本機資料管理區塊中執行的作業
inactive_seconds
等待 API 的時間
client_node_id
用戶端節點 ID
client_block_ref
用戶端區塊參考
注意事項
交易 ID 是一個唯一的 64 位元數字,可以使用 NDB API 的 getTransactionId()
方法取得。(目前,MySQL 伺服器不會公開進行中交易的 NDB API 交易 ID。)
block_instance
參考核心區塊的執行個體。連同區塊名稱,此數字可以用來在 threadblocks
資料表中查閱給定的執行個體。
state
欄位可以有以下其中一個值:CS_ABORTING
、CS_COMMITTING
、CS_COMMIT_SENT
、CS_COMPLETE_SENT
、CS_COMPLETING
、CS_CONNECTED
、CS_DISCONNECTED
、CS_FAIL_ABORTED
、CS_FAIL_ABORTING
、CS_FAIL_COMMITTED
、CS_FAIL_COMMITTING
、CS_FAIL_COMPLETED
、CS_FAIL_PREPARED
、CS_PREPARE_TO_COMMIT
、CS_RECEIVING
、CS_REC_COMMITTING
、CS_RESTART
、CS_SEND_FIRE_TRIG_REQ
、CS_STARTED
、CS_START_COMMITTING
、CS_START_SCAN
、CS_WAIT_ABORT_CONF
、CS_WAIT_COMMIT_CONF
、CS_WAIT_COMPLETE_CONF
、CS_WAIT_FIRE_TRIG_REQ
。(如果 MySQL 伺服器是以啟用 ndbinfo_show_hidden
的方式執行,您可以從 ndb$dbtc_apiconnect_state
資料表中選取,檢視此狀態清單,此資料表通常是隱藏的。)
在 client_node_id
和 client_block_ref
中,client
參考 NDB Cluster API 或 SQL 節點 (也就是,連接到叢集的 NDB API 用戶端或 MySQL 伺服器)。
tc_block_instance
欄位提供 DBTC
區塊執行個體編號。您可以使用此編號和區塊名稱,從 threadblocks
資料表取得特定執行緒的相關資訊。