4.4.2三副本集群,有个副本出现SIGSEGV,崩溃下线

【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】OBserver
【 使用版本 】4.4.2.1-101000022026050611
【问题描述】
副本6突然下线了

observer.log和rootService.log如下
Desktop.zip (19.2 MB)

codex分析结论

192.168.2.6 的 Observer 于 2026-08-04 13:45:32.718 因内部线程发生 SIGSEGV(段错误,信号 11) 崩溃。不是 OOM、磁盘满、主机重启、kill -9,也不是 OCP 下发停止命令。

Linux 审计证据:

uid=1000 pid=6608
comm="T1004_L0_G0"
exe="/home/admin/oceanbase/bin/observer"
sig=11 res=1

故障线程属于租户 1004 的工作组。崩溃前约 13 毫秒,日志出现:

13:45:32.705098 post txn free route msg
13:45:32.705221 txn has quit on start node, ret=-6213
13:45:32.705245 release tx success
13:45:32.718000 SIGSEGV

相关事务:

tx_id: 127563057727
trace_id: YB42C0A80206-000656D0079FF32F-0-0
通信方向: 192.168.2.6:2882 <-> 192.168.2.5:2882

综合判断,最可疑的是租户 1004重复表事务上下文与 free-route 事务释放并发路径,可能存在空指针、对象提前释放或 use-after-free 类型的软件缺陷。

但目前不能精确到源码行,因为:

  • RLIMIT_CORE=0,没有生成 core
  • Observer 日志没有留下崩溃栈
  • -6213/OB_TRANS_CTX_NOT_EXIST 此前也出现过,并且部分事务随后立即成功创建上下文,因此它只能作为并发竞态线索,不能单独认定为根因
2 个赞

有ocp么?如果有可以ocp上看一下cpu 磁盘 内存信息 你上面的监控信息 是主机的监控信息么?

1 个赞

13:30~14:00 取一下这个时间段的日志 三个节点的日志都取一下
在 .9 上执行:
dmesg | grep -i “oom|kill”
grep -i “fatal|SIGKILL|out of memory” /home/admin/oceanbase/log/observer.log*

1 个赞