活动事务状态-sys_trans
功能描述
sys_trans系统表用于管理数据库当前节点活动事务信息。
字段说明
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
0 | NODEID | INTEGER | 节点ID |
1 | TRANID | BIGINT | 事务号 |
2 | START_T | DATETIME | 事务开始时间 |
3 | RSTUBS | VARCHAR | 根事务(主事务)的代理节点,逗号分隔的代理事务节点ID |
4 | IS_PROXY | BOOLEAN | 是否为代理事务 |
5 | R_NODE | INTEGER | 根事务(主事务)节点ID |
6 | R_TRANSID | BIGINT | 根事务(主事务)号 |
7 | WANT_SYNC | INTEGER | 待同步操作数 |
8 | DONE_SYNC | INTEGER | 已完成同步操作数 |
9 | DONE_DEL_IDX | INTEGER | 已完成的索引删除数 |
10 | MODIFY_COUNT | INTEGER | 事务更改操作次数 |
11 | CURR_CID | INTEGER | 事务命令号 |
示例
- 查询事务分布在那些节点
- 查询未完成事务涉及的同步完成次数
- 查询长事务
- WANT_SYNC 待同步操作数(存储操作数,通常两副本,不存在ov存储、大对象存储的情况下,基本就是MODIFY_COUNT的两倍,存在则是2-6倍)
- DONE_SYNC 已完成操作数
- MODIFY_COUNT 事务操作数
sql
-- 创建表
CREATE TABLE xx(a int,b VARCHAR(100));
-- 插入数据
DECLARE
BEGIN
FOR i IN 1..1000000 loop
INSERT into xx VALUES(i,'1234567890');
END LOOP;
END;
-- 查询事务表
SELECT * FROM sys_all_trans;
NODEID|TRANID |START_T |RSTUBS|IS_PROXY|R_NODE|R_TRANSID|WANT_SYNC|DONE_SYNC|DONE_DEL_IDX|MODIFY_COUNT|CURR_CID|
------+-------+--------------------------+------+--------+------+---------+---------+---------+------------+------------+--------+
1|1770451|2024-05-16 14:18:46.000 AD|2,3 |false | 1| 1770451| 1988722| 1961116| 0| 994361| 994362|
2|1390910|2024-05-16 14:18:46.000 AD| |true | 1| 1770451| 0| 0| 0| 0| 994370|
3|1353746|2024-05-16 14:18:46.000 AD| |true | 1| 1770451| 0| 0| 0| 0| 966799|
相关系统表
- sys_sessions
- sys_thd_status