猜测是 1PC或 aysnc commit 情况下,Prewrite时会根据写的key计算min_commit_ts,最后选择最大的作为commit_ts ,为保障start_ts -> commit_ts间 schema的一致性,tidb增加了一个max_commit_ts,max_commit_ts以Prewrite+2秒的时间计算,当min_commit_ts超过max_commit_ts后 就会报 commitTStoolarge错误,然后回退到2PC提交模式。 可能是prewrite时间较长导致。