TiKV Server突发报segfault error=5异常被kill并自动重启

  • 问题tidb版本:v3.0.3
  • 问题现象:tikv server一直正常稳定运行,突然出现被kill自动重启,查询对应tikv节点的syslog日志相关kill和被重启的部分如下:

Jan 7 01:58:15 tidb02 kernel: [4159375.795718] pd-0[16833]: segfault at ffffffffffff0000 ip 0000561e97ce1c05 sp 00007f34c4277f30 error 5 in tikv-server[561e9692e000+1804000]
Jan 7 01:58:16 tidb02 systemd[1]: tikv-20173.service: Main process exited, code=killed, status=11/SEGV
Jan 7 01:58:16 tidb02 systemd[1]: tikv-20173.service: Unit entered failed state.
Jan 7 01:58:16 tidb02 systemd[1]: tikv-20173.service: Failed with result ‘signal’.
Jan 7 01:58:32 tidb02 systemd[1]: tikv-20173.service: Service hold-off time over, scheduling restart.
Jan 7 01:58:32 tidb02 systemd[1]: Stopped tikv-20173 service.
Jan 7 01:58:32 tidb02 systemd[1]: Started tikv-20173 service.
Jan 7 01:58:32 tidb02 run_tikv.sh[53335]: sync …
Jan 7 01:58:32 tidb02 run_tikv.sh[53335]: real#0110m0.154s
Jan 7 01:58:32 tidb02 run_tikv.sh[53335]: user#0110m0.000s
Jan 7 01:58:32 tidb02 run_tikv.sh[53335]: sys#0110m0.020s
Jan 7 01:58:32 tidb02 run_tikv.sh[53335]: ok

请帮忙分析排查一下诱发此segfault异常的具体原因?后续如何进一步修复解决或避免此异常?

4 个赞

可以观察下 granfa 在这个时间段的监控信息

看看tikv 是否有突发性的占用了大量的内存…

目前只有这个 tikv 节点出问题,对吧? 其他的几个tikv节点都正常?
tidb 节点有重启的现象么?

2 个赞

看了grafana监视,这个tikv节点的内存占用并没有明显变化,就这个节点突发出现了这个 segfault异常,其他tikv节点和tidb节点都好着呢。

2 个赞

参考了其他帖子:

和你的问题一样,建议在观察下

2 个赞

这两个我都有看过,里面都没有进一步追查 segfault error异常,对解决和避免这个问题没有太大指导意义啊

2 个赞

麻烦邀请一下tikv开发这块的大佬,一块分析看看这个问题。

2 个赞

按照描述都属于极端情况,一般都会要求开启coreDump 对问题进行记录和跟踪,可以参考下

另外3.X的版本已经不受支持了,可以考虑升级

3 个赞

当前系统版本内核是多少

2 个赞

一种可能是硬件本身问题(内存) 二是版本服务问题 ,可以选择升级小版本下

2 个赞

我开启一下coreDump后面再出问题了进一步看看打印了什么吧

2 个赞

系统版本为Ubuntu 16.04.3 LTS (GNU/Linux 4.4.0-87-generic x86_64)

1 个赞

其他tikv节点也都是这个系统版本

1 个赞

dmesg看看

1 个赞

dmesg.out (95.9 KB)

版本服务是指tidb当前版本服务模块的问题,需要小升级一下tidb版本吗?

今早另一个tikv节点也出现相同的segfault error=5异常被kill并自动重启了,说明这个发生概率还是很高啊

不妨一试:grin:

我在整个tidb集群的所有tikv节点都运行dmesg查看确认了一下,发现所有6个server都有tikv实例出现了这样异常的,具体打印的segfault error异常消息分为了3种:

  • deadlock-0[16224]: segfault at ffffffffffff0000 ip 000055d1e36c5c05 sp 00007f21765f8f30 error 5 in tikv-server[55d1e2312000+1804000]
  • grpc-server-1[16184]: segfault at ffffffffffff0000 ip 000055e14a632c05 sp 00007f19badf9f30 error 5 in tikv-server[55e14927f000+1804000]
  • pd-0[8872]: segfault at ffffffffffff0000 ip 000055df6fa57c05 sp 00007f6461577f30 error 5 in tikv-server[55df6e6a4000+1804000]

@dbaspace @xfworld @TiDBer_Y3ry8Hgp 各位帮看看,这些异常会不会是这个特定版本的tikv的一个已修复BUG呀?

1.软件自身错误,根据coredump分析一下;
2.依赖库问题,有人把OS的公共库(比如libc)给替换了其他版本导致或者依赖库版本不一致;
3.机器内存问题,可以通过带外或者内核日志加以判断。

1 个赞

有其他日志么
有tikv的日志么
deadlock-0 说明有个死锁 看看有没有死锁的日志