Nebula实时并发更新

  • nebula 版本:3.6.0
  • 部署方式:分布式
  • 安装方式:RPM
  • 是否上生产环境:Y
  • 硬件信息
    • 磁盘( 推荐使用 SSD)
    • CPU、内存信息
  • 问题的具体描述
    多线程写入数据,更新不同的edge,会出现More than one request trying to add/update/delete one edge/vertex at the same time
线程1:
UPDATE EDGE ON address_book '1' -> '1234567890' SET status = 0,update_time = 1706757104190
线程2:
UPDATE EDGE ON address_book '1' -> '2345678901' SET status = 0,update_time = 1706757104190

能确保不同的线程,更新边的数据是不一样的么?

查看一下 storaged 的 error 日志,应该有类似 xxx conflict xxx 的一段日志

1 个赞

对于同一个vertex 或者 edge 的修改,是否可以依赖raft本身的日志顺序来确保写入的先后顺序,从而根本上避免write conflict

1 个赞