oceanbase-长事务排查

一、背景

连续好几天半夜出现了长事务,因为是夜间,按照官网的查询方式已经不及时了,接下来描述下详细的查询方式

二、具体排查方式

1.根据事务视图查看

但一般事务视图只能保证几分钟,所以晚几分钟就会看不到

bash 复制代码
select *  FROM GV$OB_TRANSACTION_PARTICIPANTS where TX_ID="571600791";

2.根据sql审计视图查看

  • 通过以下参数可以控制 SQL Audit 功能的行为:
    • enable_sql_audit:集群配置项,控制全部租户的 SQL Audit 功能是否开启,动态生效。
    • ob_enable_sql_audit:租户级别的系统变量,控制当前租户是否开启 SQL Audit 功能,动态生效。
    • ob_sql_audit_percentage:租户级别的系统变量,控制当前租户 SQL Audit 功能占用租户内存的百分比,动态生效。为防止 SQL Audit 占用过高内存,系统设置其内存上限为 1GB。
bash 复制代码
select * from GV$OB_SQL_AUDIT where tx_id=571600791\G

3.根据日志查看

在observer日志中搜索事务id关键字,可以看到能看到对应的trace id和session id,然后在observer日志中分别根据trace id和session id搜索,这样便能确定具体的sql了

三、结论

最终定位到的长事务是 observer 收集统计信息造成的

相关推荐
狼爷12 小时前
吃透 Java Function 接口,搞定 99% 的 Stream 场景
java·函数式编程
笃行35014 小时前
金仓数据库数据安全双防线:静态存储加密与传输加密实战
数据库
笃行35014 小时前
金仓数据库物理备份实战:sys_rman 全流程演练与误覆盖抢救
数据库
笃行35015 小时前
金仓数据库逻辑备份实战:从全库导出到 Schema 替换的完整闭环
数据库
祎雪双十Gy16 小时前
从 DataX 的配置加载说起:我用 FastJson2 做了一个轻量级动态配置管理库
java·后端
小锋java123416 小时前
分享一套锋哥原创的SpringBoot4+Vue3宠物领养网站系统
java
考虑考虑19 小时前
Java实现hmacsha1加密算法
java·后端·java ee
掉鱼的猫20 小时前
Spring Boot → Solon 注解迁移实战指南:一张对照表说清楚
java·spring boot
plainGeekDev20 小时前
广播接收器 → Flow + Lifecycle
android·java·kotlin