A ActiveRecord::UnknownPrimaryKey occurred in survey_response#create:
Unknown primary key for table question_responses in model QuestionResponse.
activerecord (3.2.8) lib/active_record/reflection.rb:366:in `primary_key'
我们的应用程序一直在引发这些异常,我们不知道是什么导致了它们。该异常发生在生产环境和测试环境中,但在任何一个环境中都不可重现。它似乎与服务器负载有关,但即使在峰值负载时,一些请求仍然成功完成。该应用程序(生产和测试环境)是 Rails 3.2.8,ruby 1.9.3-p194,使用 MySQL 和 mysql2 gem。生产环境是 Ubuntu,开发/测试环境是 OS X。该应用在生产环境中的 Phusion Passenger 下运行。
这是一个示例堆栈跟踪:https
://gist.github.com/4068400
这是有问题的两个模型,控制器和“desc question_responses;”的输出:https
://gist.github.com/4b3667a6896b60383dc3
它最肯定有一个主键,它是一个标准的 rails 'id' 列。
重新启动应用程序服务器会暂时阻止异常的发生,否则它们会在 30 分钟到 6 小时的时间段内发生,开始时突然停止。
它总是发生在同一个控制器动作、表和模型上。
有没有其他人遇到过这个异常?