sync-diff-inspector比对数据时报错index out of range并退出

【 TiDB 使用环境】生产环境
【 TiDB 版本】TiDB 7.5.2 ,sync-diff-inspector v8.1.0-8
【复现路径】执行如下命令,可以持续复现

./sync_diff_inspector --config diff_cdc.toml

【遇到的问题:问题现象及影响】
sync_diff_inspector报错并退出,报错内容如下:

diff_cdc.toml中的内容如下:

loglevel 开成 debug 再跑下?
现在这个情况很难定位的

开debug log以后的日志如下:

index out of range ,证明程序代码有问题咯,数组越界,需要官方的人优化一下这个case

把 export-fix-sql 设置为 false 再试下, 我之前遇到过一次,关闭为 false 就能跑过了。 具体原因忘了,印象中是在生成 fix-sql 时候,源表的数据发生变化导致数组越界。

改成false试了一下,依然复现

看不出到底是执行那个sql的时候报错了。
对应tidb上应该也有报错信息,感觉问题还是出在tidb上,毕竟是tidb执行某个sql的时候报错了。

我分批对表进行了检查,定位到如下几张表100%复现报错,它们有个共同特征是主键很长,怀疑是不是这里的问题

下面是对单张表进行校验时的报错日志:

如果可以的话看看方不方便提供下表结构, show create table xxx,要有敏感信息脱敏一下就行

看日志像是编码格式的问题

有试过sync-diff-inspector使用7.5.2版本吗?

除了sync-diff工具外,还有什么比对工具吗?

7.5.2 toolkit包里带的就是sync-diff-inspector v8.1.0-8版本

官方的就这个吧,还有其它的?

数据写入是从TiDB->TiCDC->DB吗?CDC和下游DB是否有相关报错日志?