auto analyze变成僵尸连接,kill都清理不了,尝试了很多方式都无法清理,因为是正式环境还未尝试重启tidb节点,还有其他清理方式吗

【TiDB 使用环境】生产环境 /测试/ Poc
【TiDB 版本】
【操作系统】
【部署方式】云上部署(什么云)/机器部署(什么机器配置、什么硬盘)
【集群数据量】
【集群节点数】
【问题复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
【资源配置】auto analyze变成僵尸连接,kill都清理不了,尝试了很多方式都无法清理,因为是正式环境还未尝试重启tidb节点,还有其他清理方式吗
【复制黏贴 ERROR 报错的日志】
【其他附件:截图/日志/监控】

然后也没有 auto analyze任务了

kill不了吗?是不是执行节点不对?
https://docs.pingcap.com/zh/tidb/stable/statistics/#终止后台的-analyze-任务

1 个赞

可以试试这个:
1.找到僵尸进程的父进程ID(PPID)
ps -eo pid,ppid,state,cmd | grep ‘^.*Z’

2.向父进程发送SIGCHLD信号,要求它回收子进程
kill -s SIGCHLD $父进程PID

是在analyze任务的tiDB执行的,任务已经10几天了
image

1.找到僵尸进程的父进程ID(PPID)
ps -eo pid,ppid,state,cmd | grep ‘^.*Z’

通过这个没有看到僵尸进程,但是show processlist能看到

用这个方式kill看看

首先通过 SQL 确认僵尸连接的状态,精准定位问题; 使用 TiDB 专用 kill 命令;

ps -eo pid,ppid,state,cmd | grep ‘^.*Z’

kill -g 进程号

有些4.0、5.1旧版本存在`auto analyze 会话清理不彻底的 bug

这个也不行

使用 的是8.0.1版本

能麻烦给出具体步骤吗

是不是任务被阻塞了?后面是如何处理的?

kill不了这个的确是第一次见

蹲一下后面是如何解决的

重启一下?

我们当时将这个改成凌晨执行,这玩意太耗资源和时间了

会不会卡批?