【发布时间】:2010-08-29 17:01:32
【问题描述】:
我在黄瓜步骤定义中使用了以下构造。
Given "I have following stuff" do
Model.delete_all
list.each { |i| Model.make!(:name => i) }
end
(make! 来自机械师 2)。
上述步骤因 INSERT 语句超时而失败。当我为测试、环境打开控制台时,我可以毫无问题地执行每条语句。此外,如果我禁用事务功能,超时就会消失。
谁能帮我解决这个问题? (这在 rails 2.x 上没有问题)
(数据库 MySQL)
【问题讨论】:
-
确切的错误信息是什么?
-
Mysql2::Error: Lock wait timeout exceeded;尝试重新启动事务: INSERT INTO
model(values...) SQL (0.8ms) ROLLBACK SQL (39.5ms) ROLLBACK -
抱歉回复晚了。提前感谢您的帮助。
标签: activerecord transactions ruby-on-rails-3 cucumber