#11339·seaweedfs

filer: 原子条件删除需要精确的条目版本(IfNotModifiedAfter 是第二个解析级别)

作者: lucndm创建于 2026年9月16日更新于 2026年9月16日

描述特性

** 附有确切条目版本的有条件删除** ——第11338号讨论的后续。

删除请求.如果在第二项决议(输入')之后没有修改。 Atr.Mtime.Unix() > if NotModified After`),同一秒内前进的一行仍然通过后卫. 因此,在替换者第二时间分享原件时,如“fs.verify-prune Enterries”和“world.fsck”等壳牌命令可以删除一个只重写的文件。

拟议方向

在删除路径中添加精确的版本前提, 例如 :

  • 如果在以后没有修改 ' (比较Mtime.UnixNano()'),或
  • 一个不透明的条目版本/修改,在每一个内容更新(包括保留 mtime 的附录)上都会有变化.

客户随后会通过在验证时所观察到的版本,使得没有额外的RPC就无法进行检索-删除比赛.

  • 背景情况

在 #11338中,客户端的缓解是块设置身份重新检查,加上“如果未修改之后”加上删除后确认,从而关闭了实际案例(同秒重排PUT,附件),但为没有MD5的条目留下了子秒搜索-删除窗口。 提交方的先决条件会完全关闭.

内容来源: seaweedfs/seaweedfs