ticdc创建同步任务时指定--start-ts报错

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

  • 【TiDB 版本】:v4.0.9
  • 【问题描述】:创建ticdc同步任务,如果指定–start-ts,则无法创建成功。报错提示如下:
    Starting component cdc: /home/tidb/.tiup/components/cdc/v4.0.9/cdc cli changefeed create --pd=http://192.168.1.42:2379 --start-ts=421695517258416133 --sink-uri=mysql://root:123456@192.168.1.181:3306/dbtest --changefeed-id=cdc-dbtest --config conf/cdc-dbtest.toml
    Error: startTs less than gcSafePoint: [tikv:9006]GC life time is shorter than transaction duration, transaction starts at 421695517258416133, GC safe point is 421695607147593748
    ……
    startTs less than gcSafePoint: [tikv:9006]GC life time is shorter than transaction duration, transaction starts at 421695517258416133, GC safe point is 421695607147593748
    Error: run /home/tidb/.tiup/components/cdc/v4.0.9/cdc (wd:/home/tidb/.tiup/data/SJu22md) failed: exit status 1
    如下是gc check point的设置,根据该配置,按照预期–start-ts是小于这个时间点的
    image

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

麻烦看下这个
https://docs.pingcap.com/zh/tidb/stable/troubleshoot-ticdc#ticdc-创建任务时如何选择-start-ts

可能是我表达问题。在这个case里,gc时间设置的48小时,配置–start-ts的时候是按这个要求在gc时间之内,但执行命令时的报错提示的gc safe point 的tso时间是当前时间的tso

通过增加–disable-gc-check 参数跳过gc检查后,任务创建成功,后续检查同步状态正常

启动cdc同步任务时候,–start-ts的值,是从哪里获取的,或是说可读的时间值如何转化成整型的时间ts值

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