TiDB DDL执行时间长,回滚时间长

如果cpu负载不高,可以调整参数加快索引创建速度。

set global tidb_ddl_reorg_worker_cnt=32;

建议看看这个帖子。
感觉像是有些大region不能split。导致的mvcc版本太多。最后导致添加索引时间巨长。

现象就会是这样。

ROW_COUNT 这个一显示是 0

其他表的热点split都是可以正常切分的

和其他的表没关系,这个问题会发生在一些特定的region上,不是一个影响全局的问题。
复现的难度也很大。是有些巧合在里面的。

生产库上 1500行 show table xxx regions 显示 有 2185行

所以你这个现象,不正常。

anaylze table 后统计信息里面显示 1500 ,但就是添加索引加不上,一直卡在那,找不到原因,取消job的时候也要等很久

我从来不敢让一条ddl跑过夜,小心脏受不了

白天不敢跑,只能半夜执行

那就代表没在干活

是不是只有重启所有tidb-server大法了

你可以看下 ddl owner 节点日志,它一直打印那个节点,重启那个就好了

重启过 ddl owner 一个 tidb-server节点,效果一样

那就都重启下

恩,只能这样了,正在和业务沟通重启时间

mark一下,持续关注

解决了没,不行重启下。

约的时间是周一重启

admin show ddl jobs 查看当时有其他DDL操作吗?

其它表的ddl正常执行完成

start job 报索引创建时间过长的单子还是挺多的。看来,还有要找专门的运维时间来维护索引才行。