一、支持版本
适用于 TDSQL Boundless V21.2.0 及以上版本。
各版本变更如下:
·V21.2.0:首次引入 TDSTORE_PESSIMISTIC_DEADLOCK_DETAIL_INFO 系统视图。
·V21.6.1.0:timestamp 字段改名为 occurred_at,类型从 varchar 改为 timestamp。
二、字段说明
| 字段名 | 类型 | 说明 |
| rollback_trans_id | bigint unsigned | 本死锁环中,被回滚的事务的 ID。 |
| requesting_node | varchar(64) | 锁等待关系中,执行申请悲观锁的事务的 SQLEngine 节点名称。 |
| requesting_trans_id | bigint unsigned | 锁等待关系中,申请悲观锁的事务的 ID。 |
| blocking_trans_id | bigint unsigned | 锁等待关系中,已经持有悲观锁的事务的 ID。 |
| req_lock_range | varchar(64) | 锁等待关系中,申请悲观锁的事务申请的锁范围。 |
| blk_lock_range | varchar(64) | 锁等待关系中,已经持有悲观锁的事务此时持有的锁范围。 |
| occurred_at | timestamp(3) | 本死锁环对应的死锁事件的发生时间。 |
| requesting_sql | varchar(128) | 锁等待关系中,申请悲观锁的事务此时正在执行的 SQL 语句。 |
三、示例
·输出示例:
tdsql> SELECT * FROM information_schema.tdstore_pessimistic_deadlock_detail_info \\G*************************** 1. row *************************** rollback_trans_id: 29468596191101374 requesting_node: node-tdsql3-xxxx-001requesting_trans_id: 29468595838780035 blocking_trans_id: 29468595939442912 req_lock_range: 000027308000000F blk_lock_range: 000027308000000F occurred_at: 2026-04-28 15:31:08.555 requesting_sql: SELECT * FROM deadlock_test WHERE id = 15 FOR UPDATE*************************** 2. row *************************** rollback_trans_id: 29468596191101374 requesting_node: node-tdsql3-xxxx-002requesting_trans_id: 29468595939442912 blocking_trans_id: 29468596191101374 req_lock_range: [0000273080000010,0000273080000015) blk_lock_range: [0000273080000010,0000273080000015) occurred_at: 2026-04-28 15:31:08.555 requesting_sql: SELECT * FROM deadlock_test WHERE id BETWEEN 16 AND 20 FOR UPDATE*************************** 3. row *************************** rollback_trans_id: 29468596191101374 requesting_node: node-tdsql3-xxxx-003requesting_trans_id: 29468596191101374 blocking_trans_id: 29468595838780035 req_lock_range: 000027308000000C blk_lock_range: [000027308000000A,000027308000000F) occurred_at: 2026-04-28 15:31:08.555 requesting_sql: SELECT * FROM deadlock_test WHERE id = 12 FOR UPDATE
·查询示例
— 查询所有节点上,历史发生过的死锁详细信息SELECT * FROM information_schema.tdstore_pessimistic_deadlock_detail_info \\G– 查询所有节点上,被回滚事务 ID 为 29468596191101374 的死锁事件的详细信息:SELECT * FROM information_schema.tdstore_pessimistic_deadlock_detail_info WHERE rollback_trans_id = 29468596191101374 \\G