在 Tarantool 中遍历记录时删除记录会有任何问题吗?

Can there be any problems deleting records when iterating over them in Tarantool?

捕捉这个:

for _, t in box.space.session.index.user:pairs({uid}) do
    local session_id = t[F.session.id]
    box.space.session:delete({session_id})
end

会不会有任何性能或正确性问题?

Tarantool 1.9

完全没问题。但是,请注意以下事项:

  • 如果您不使用事务,则在遍历 space 时,您可能会也可能不会遍历正在插入的记录。
  • 添加事务会提高性能
  • 但是,包含数千条记录的事务可能会冻结 tarantool 的时间过长,因此最终决定取决于您的典型负载