【 TiDB 使用环境】生产环境
【 TiDB 版本】6.5.1
【复现路径】定时对表进行truncate 操作
【遇到的问题:问题现象及影响】表truncate语句卡住,后续任务挤压
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】
尝试措施:
取消DDL 语句失败
ADMIN CANCEL DDL JOBS job_id
触发TiDB Leader 重新选举,依然不能释放卡住的DDL
curl -X POST http://xxxx:10080/ddl/owner/resign
现在成功的措施 对TiDB Server 依次重启可以释放卡住的DDL。
但是卡住评率很频繁,昨天释放今天有卡住,每次重启TiDB Sever 对工作任务影响很大。
咨询一下有什么办法,可以不重启释放卡住任务,或者避免DDL 卡住
啦啦啦啦啦
2
SELECT * FROM mysql.tidb_mdl_view
看看是不是有元数据锁
Kongdom
(Kongdom)
6
去年没有完全解决,今年又出现类似问题了么?重启不管用了么?
重启管用,就是影响很大,怎么避免DDL阻塞,或者不重启释放DDL阻塞的任务
Kongdom
(Kongdom)
8
慢查询里有记录dll语句么?如果有,倒是可以看看是哪一步慢了
有的 就这两个 DDL 执行truncate 阻塞了 7个多小时,昨天阻塞了一次,今天又阻塞了一次
Kongdom
(Kongdom)
12
Kongdom
(Kongdom)
15
这个是6.5之前是默认关闭的,6.5才默认开启的。我理解是关闭没有影响。
嗯 感谢 已经释放阻塞任务,重新分配TiDBServer 节点,并检查schema 信息没有问题,看看明天是否还会阻塞。在阻塞尝试关闭 元数据锁看看
查看阻塞前一段时间,有一个 8kw条的insert & commit 的任务,是否是这个原因引起?