dm同步数据异常

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

  • 【TiDB 版本】:tidb4.0,tidb-dm2.0
  • 【问题描述】:使用dm工具同步数据到tidb中,同步task终止异常信息为:
    “ErrLevel”: “high”,
    “Message”: “startLocation: [position: (my-binlog.000991, 359610706), gtid-set: ], endLocation: [position: (my-binlog.000991, 359611706), gtid-set: ]: execute statement failed: DELETE FROM order_db.shipped_order WHERE id = ? LIMIT 1”,
    “RawCause”: “Error 1105: unexpected resolve err: abort:“Txn(Mvcc(Committed { commit_ts: TimeStamp(420892332944523274) }))” , lock: key: {tableID=261154, handle=1840579}, primary: {tableID=261022, handle=169919}, txnStartTS: 420892332892094484, lockForUpdateTS:0, ttl: 3158, type: Put”,
    “Workaround”: “”

若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。

可以参考下这个帖子 升级后,mysql同步tidb报错,Error 1105: unexpected resolve err

想问一下这个是什么原因造成得,解决方案已看

https://github.com/pingcap/tidb/pull/14968 修复 https://github.com/pingcap/tidb/pull/9127 时引入了另一个 bug,会导致事务 prewrite 和 commit 时的 primary key 不一样。