sync_diff_inspector在DM 6.5下不能识别dm_task

DM 6.5为了支持物理导入,将 import-mode的值从['sql', 'loader']改成了logical和physical,但是sync_diff_inspector没有适配,导致现在从DM获取task配置时候报错,报错内容为:Message: invalid load mode 'logical', Workaround: Please choose a valid value in ['sql', 'loader']
PS: 下面是新的参数说明

    # 全量阶段数据导入的模式。可以设置为如下几种模式:
    # - "logical"(默认)。使用 TiDB Lightning logical import 进行导入。文档:https://docs.pingcap.com/zh/tidb/stable/tidb-lightning-logical-import-mode
    # - "physical"。使用 TiDB Lightning physical import 进行导入。文档:https://docs.pingcap.com/zh/tidb/stable/tidb-lightning-physical-import-mode
    #   当前 "physical" 为实验特性,不建议在生产环境中使用。
    import-mode: "logical"

https://github.com/pingcap/tidb-tools/blob/master/sync_diff_inspector/config/dm.go#LL40C8-L40C8
不过看源码,是直接调用dm的api来解析任务配置的,估计修改下go.mod里的github.com/pingcap/tiflow版本号就能自动修复了

我也遇到这个问题,dm版本 6.5,用sync_diff_inspector 校验数据的时候报这个错,请问您是怎么解决的?

master分支已经修复了,我是直接从master分支自己编译了个二进制版本,然后放到线上了。现在新的6.5.2里的工具应该也修复了,可以直接用里边的二进制文件试试。

如果升级线上版本比较麻烦的话,还有个绕过办法,就是手动写上下游的MySQL/TiDB访问地址,不从DM获取

好的,谢谢

好的,感谢

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