ocp显示集群有死锁

【 使用环境 】生产环境
【 OB or 其他组件 】ob4.2.1
【 使用版本 】
【问题描述】
ocp显示集群有死锁。
图像

想问下老师,这种情况如何处理下这个死锁,已经提醒好久了

用obdiag 的根因分析功能去分析一下死锁,

obdiag rca list 列出支持的所有根因分析场景

obdiag rca run --scene=lock_conflict 锁冲突根因分析

老师,obdiag是有处理意见吗?我们想处理这个死锁的

有的,根因分析的结果会给出死锁的session,如果想止血解除死锁可以考虑kill session。先分析一下看看

好的,谢谢

log.txt (8.0 KB)
老师,怎么判断巡检的任务执行的是成功了?
这个提醒没有锁

刚看了你发的obdiag的日志,看起来最终的根因分析的结果是未发现锁冲突的情况。可能曾经发生过死锁,现在已经没有了;

在ocp集群上是提醒有死锁的,还有那个CDB_OB_DEADLOCK_EVENT_HISTORY是能查到的。
然后我们导入数据,也发现deadlock报错了,都是指向的family_member的表

ob的日志中有报错吗,用obdiag 分析一下日志看看,obdiag analyze log --from <报错前几分钟时间> --to <报错时间> 将分析结果贴出来

比如:obdiag analyze log --from “2023-10-08 10:25:00” --to “2023-10-08 11:30:00”

另外对于这张表family_member 你看业务SQL上有造成死锁的条件吗

应该就是insert插入导致的,多人操作,插入是在事务内的。

ob日志中有没有报错不确定,是tomcat上面报错的deadlockExpection的

把CDB_OB_DEADLOCK_EVENT_HISTORY的结果发出来看看吧,另外你这个租户是mysql租户模式吗?


以前是两条记录,现在是三条了,新增了family_member的记录。
obdiag analyze log我就是查的2024-06-14的,但是没查到。
我们是mysql租户

您好,请问该问题还存在么

还存在的

image

老师,你提供的ocp页面是死锁历史,是否存在一直处于死锁状态么

这个怎么查?GV$OB_LOCKS表吗?

这个显示是最近7天的,实际好久了,得有半个月了吧,一直显示有死锁