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 は、NDB API の getTransactionId()
メソッドを使用して取得できる一意の 64 ビット数値です。 (現在、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
のいずれかの値を持つ可能性があります。 (ndbinfo_show_hidden
を有効にして MySQL サーバーが実行されている場合は、通常は非表示になっている ndb$dbtc_apiconnect_state
テーブルから選択することで、この状態のリストを表示できます。)
client_node_id
および client_block_ref
では、client
は NDB Cluster API または SQL ノード (つまり、NDB API クライアントまたはクラスタに接続された MySQL Server) を指します。
tc_block_instance
カラムには、DBTC
ブロックインスタンス番号が表示されます。 これをブロック名とともに使用して、threadblocks
テーブルから特定のスレッドに関する情報を取得できます。