应用程序如何获取事务对应的ts

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

  • 【TiDB 版本】:v4.0.9
  • 【问题描述】:

有什么方法,可以让应用程序获取到当前完成事务对应的ts吗?

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

请问获取 ts 的原因是什么 ?

用于保证跨集群的强同步。对于少量业务,有这个需求:在A-cluster写入数据,要保证一定能从B-cluster读出数据。目前的想法,A-cluser ---- ticdc ----> B-cluster。应用在A-cluster写入后,想办法获取到该写操作的ts-1,并后台从ticdc获取到该同步任务的进度ts-2。等待ts-2>=ts-1时,即保证了同步成功。

可以看一下 两个集群的 TiDB Log 对应的 Ts ,不过 TiCDC 的数据写入还会有一定延迟,还是参考一下 TiCDC 的监控逻辑