TiDB 表数据无法GC导致查询巨慢

【 TiDB 使用环境】生产环境 /测试/ PCO
生产
【 TiDB 版本】
5.1.0
【遇到的问题】
select * from nrdc_bi.ads_appointment_detail_d limit 1;

这种SQL查询需要1min多, 这个表count(*) 只有15w行,经查这个表有280个数据region(不包括Index), 后通过tikv clt 查到某一个region数据内有大量的老版本的数据没有GC掉

这个截图中的delete 的commit_ts 是8月18号, GC时间为24h, 理论上来说数据早该被删除了,但实际上没有删除,,导致一个15w行的表有280个region

后排查TiDB gc worker在8月18、19号的日志, 似乎没有什么异常

同集群其它规模的表、比这个表大一个数量级的表直接limit n 都是秒回, 只有这个表有异常
求问一下 这个请问该如何处理???
【复现路径】做过哪些操作出现的问题
【问题现象及影响】

【附件】

请提供各个组件的 version 信息,如 cdc/tikv,可通过执行 cdc version/tikv-server --version 获取。

https://github.com/tikv/tikv/issues/11217 参考一下这个 看下是否有相同的情况。

1 个赞

参考 bug-11217: 多key GC调用导致GC不工作,大量历史版本残留

如果可以这个表重建下,先临时解决,后续版本升级

1 个赞

感谢大佬, 应该就是这个问题

感谢感谢,确实是这个问题~~~

:+1::+1::+1:

看来一些问题要先匹配bug

:wink:马上Get新技能吧:+1:

此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。