【TiDB 使用环境】生产环境 /测试/ Poc
【TiDB 版本】v8.5.1
【操作系统】openEuler 22.03 LTS
【部署方式】
海光CPU: Hygon C86 7155, 32核
内存: 128GB
系统盘: SSD, 400GB
【集群数据量】
【集群节点数】单节点
【问题复现路径】安装部署完成后启动集群:tiup cluster start
【遇到的问题:问题现象及影响】tikv起来后又退出,发生了coredump
【资源配置】
【复制黏贴 ERROR 报错的日志】
gdb调试coredump文件:
【其他附件:截图/日志/监控】
看看日志就行。
你现在的调用栈大概意思是:
crash 启动后,recover 阶段,把wal应用后,写入 level0 层的文件,在计算crc32
看这个没啥用,可能是上层tikv自己退出的。看看上层tikv的日志,是不是有panic_mark 之类的。
1 个赞
换了台x86的机器,同样的部署方式,就没出现类似的问题。
从gdb调试结果看,怀疑是海光的指令集兼容问题,_mm_clmulepi64_si128应该是调用了某些高级指令。
2 个赞
进程收到 abort 信号就会触发 coredump, 看看tikv 或者系统相关日志
1 个赞
日志确实看不到什么,如果一部署就有问题,那可能和cpu有点关系。
cat /proc/cpuinfo
里面可以看下支不支持 pclmulqdq
,不支持的话 panic 是符合预期的。得重新编译个 tikv 才能运行。
1 个赞
可以试试在最终要跑的机器上编译,编译前加上 export RUSTFLAGS=“-C target_cpu=native”,但不确定 tikv 静态依赖的库里面有没有用到这些指令
1 个赞