tikv raw api RawDel RawPut操作希望得到更多的执行反馈信息

为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:

【TiDB 版本】
TIKV 4.0.8

【问题描述】

我们系统想使用tikv集群存储元数据,想了解下tikv能不能跟踪写请求(RawDelete、RawPut)的执行顺序?

现在有个需求是希望客户端对 相同的KEY 调用RawDelete或RawPut接口的时候不仅能知道执行结果,也想知道内部执行的顺序。

我们的业务场景是这样的:
对同一个key操作后是以多版本保留的,假如操作顺序是put keya → del keya → put keya后多版本状态为:
version = 1,keya put
version = 2,keya del
version = 3,keya put
所以为保持tikv存储的数据状态和多版本的最终状态(最大version)一致需要tikv返回具体的执行序列号,将序列号做为业务版本(version)排序后能保持数据版本内外一致(tikv内部和业务)。

看了部分tikv的代码了解到有可能支持这一需求的是将raft阶段对应的 commit index或apply index返回给客户端,raft是顺序执行的,commit index或apply index应该就代表了请求的执行顺序,我是这么理解的,当然还要考虑region分裂的问题。

这样做是否有可行性或该怎么做,望指教:pray:


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

Duplicate with: tikv raw api del put操作希望得到更多的执行反馈信息

嗯,那个模块选错了,重新发个

那个帖子帮你把模块重新选了一下,这个帖子就隐藏掉了

好的,谢谢