PiTR一致性的疑问

看了TiDB V6的PiTR文档后(https://docs.pingcap.com/zh/tidb/v6.2/point-in-time-recovery),有点疑问:

假设一个分布式事务DT1在三个节点是执行:
A节点 1s800ms
B节点 1s950ms
C节点 2s100ms
在每个节点上的binlog应该都是按照这个时间记录的,如果我指定时间点恢复是2s000ms来恢复,A和B应该是回滚成功的,但是C节点因为在2s100ms才commit,应该是不会加载成功的,这样就导致了DT1这个分布式事务在C节点上缺少了一个子交易。

在TiDB的PiTR设计里边是否会根据分布式事务的记录,把C节点的恢复时间往前移动一点,把这个2s100ms的子交易前滚回来呢?

两阶段提交中的 committs 是一样的。
https://docs.pingcap.com/zh/tidb/stable/pessimistic-transaction#悲观事务提交流程

感谢答复,两阶段提交的commit ts我相信能够保持一致,因为申请到的tso都会给到分布式交易的多个节点,但是不同节点执行的时候并不能保证同一时间完成,因为不可能所有节点都去做消息沟通说我们一起完成(硬件延迟、网络延迟等情况),所以记录到不同的binlog中的子交易完成的时间一定会不同,我的疑问刚好在这里:如果ABC三个节点完成的时候不同,我给定一个时间去做回滚,ABC如果接受我的时间,而不去处理这个分布式交易恢复的一致性,就会出现丢失子交易的情况。而如果要去记录这个分布式交易,就需要保存所有的分布式交易所涉及到的节点。
这个问题不是生产的时候会出现的问题,而是在做PiTR的时候会出现的问题。需要了解更多一点PiTR的实现细节,关于分布式交易一致性的问题。