tidb binlog丢失DML事件问题排查

补充:
这几天排查下来发现还有一个6.5.1版本的集群有相同的现象,一直以来我们binlog的安装方式是安装好pump组件之后,修改tidb实例的binlog.enable参数然后reload tidb。
开始我认为是pump组件的安装有问题,reload tidb之后应该restart一次,因为两个集群的共同现象是只有1个tidb实例的binlog生效,可能是reload滚动重启带来的问题。
但后来想想这种修改tidb配置后进行reload也没啥逻辑缺陷,在一个7.0的集群上试了一下装好的binlog在所有tidb也都生效了。
目前是怀疑某些版本的tiup/tidb/binlog在reload时有缺失,现在稳妥起见reload之后再加一遍restart tidb。
这种BUG目前无法被常规手段发现,无论是tidb 10080端口还是系统视图都显示binlog.enable已开启,但是实质上解析binlog文件或者kafka消息都会发现:在某些tidb实例上binlog无法生成。
当前只能先手动排查下所有binlog集群,对同步和故障恢复的影响很大。

1 个赞