21.5.14.35 ndbinfo server_transactionstable

server_transactionstable 是cluster_transactionstable 的子集,但仅包括当前 SQL 节点(MySQL 服务器)为参与者的那些事务,同时包括相关的连接 ID。

server_transactionstable 包含以下列:

  • mysql_connection_id

MySQL 服务器连接 ID

  • node_id

事务协调器节点标识

  • block_instance

事务协调器块实例

  • transid

Transaction ID

  • state

操作状态(有关可能的值,请参见文本)

  • count_operations

Transaction 中有状态操作的数量

  • outstanding_operations

本地数据 Management 层仍在执行操作(LQH 块)

  • inactive_seconds

awaitAPI 所花费的时间

  • client_node_id

Client 端节点 ID

  • client_block_ref

Client 端块参考

Notes

mysql_connection_idSHOW PROCESSLIST的输出中显示的连接或会话 ID 相同。它是从INFORMATION_SCHEMAtableNDB_TRANSID_MYSQL_CONNECTION_MAP获得的。

block_instance指内核块的实例。连同块名一起,该数字可用于在threadblockstable 中查找给定的实例。

事务 ID(transid)是一个唯一的 64 位数字,可以使用 NDB API 的getTransactionId()方法获得。 (当前,MySQL Server 不会公开正在进行的事务的 NDB API 事务 ID.)

state列可以具有值CS_ABORTINGCS_COMMITTINGCS_COMMIT_SENTCS_COMPLETE_SENTCS_COMPLETINGCS_CONNECTEDCS_DISCONNECTEDCS_FAIL_ABORTEDCS_FAIL_ABORTINGCS_FAIL_COMMITTEDCS_FAIL_COMMITTINGCS_FAIL_COMPLETEDCS_FAIL_PREPAREDCS_PREPARE_TO_COMMITCS_RECEIVINGCS_REC_COMMITTING,_19,CS_RESTART CS_START_SCANCS_WAIT_ABORT_CONFCS_WAIT_COMMIT_CONFCS_WAIT_COMPLETE_CONFCS_WAIT_FIRE_TRIG_REQ。 (如果 MySQL Server 在启用ndbinfo_show_hidden的情况下运行,则可以通过选择ndb$dbtc_apiconnect_statetable(通常是隐藏的)来查看此状态列 table。)

client_node_idclient_block_ref中,client指的是 NDB 群集 API 或 SQL 节点(即,连接到群集的 NDB APIClient 端或 MySQL 服务器)。

block_instance列提供DBTC内核块实例号。您可以使用它从threadblockstable 中获取有关特定线程的信息。