请问TiKV有没有类似于binlog的东西记录commit的顺序?

【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】 v5.4.3
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
【资源配置】
【附件:截图/日志/监控】

请问各位大佬们,TiKV有没有类似于binlog的东西记录commit的顺序?
鄙人在写线上业务在计费的时候,发现两个不同的进程A和B有可能会同时触发:TxnGet(K) → TxnDel(K) 的操作,然后V里记录了size字段,可实际上A和B可能只有一个真正删除了(另一个删不存在的K,也返回删除成功),但最后Del的size是两份。上层如果再加锁又会有性能上的问题,所以我想知道有没有什么方法能拿到commit的执行顺序,或者说能获取到TxnDel的affected row之类的?

不支持事务 严格的串行序列,所以顺序上无法保证
ACID 的语义上也没有约束这个,

commit 的顺序,按照你的要求,只有消息队列能满足 :sunflower: :sunflower:

你的需求,把事务隔离级别调到 SERIALIZABLE 级别能满足,但是这样数据库性能就太差了, tidb也不支持 :crazy_face:
不然就是像楼上说的 消息队列

保证顺序的话,消息队列得单机串行吧,不然还是会有问题
感觉这是业务上要考虑幂等的问题,参考下这个?