【发布时间】:2018-10-01 06:32:45
【问题描述】:
我有一个运行在多线程 Web 服务器 Puma 上的 Rails 应用程序。随着用户数量的增加,我开始看到我的一些模型在用户名上具有唯一的活动记录验证,在我的 API 上同时调用了两次,并在数据库中插入了两次。
这怎么可能?我需要从哪里开始调试?
【问题讨论】:
-
您可能在该特定列上没有唯一数据库索引,因此验证在插入此特定值的其他事务尚未提交时运行。
标签: ruby-on-rails database concurrency constraints puma