Классы Rails ActiveRecord не сохраняют объекты на контроллере # создают случайным образом - PullRequest
1 голос
/ 16 марта 2012

Потерпи меня здесь на секунду:

У нас большой проект с ~ 50-60 клиентами и 10-15 людьми онлайн в любое время. Мы запускаем Rails 2.3.14 на EC2, используя Scalarium.

У нас также есть различные типы, такие как Invoice, Order, Estimate и т. Д., Которые являются типами модели Document. Поэтому таблица MySQL documents довольно большая (более 80 000 записей).

Проблема, с которой мы сталкиваемся, заключается в том, что иногда (Document|Estimate|Order|Invoice|...).save возвращает true, но соответствующий объект не создается. Это происходит только на DocumentsController#create, очевидно.

Поскольку ответ, который мы получаем от save, истинен, запись должна быть сохранена в базе данных. Но это не так! Затем пользователю дается 404, потому что объект не был создан, но поскольку save вернул true, контроллер перенаправил нас на DocumentsController#show.

В чем может быть проблема здесь? Влияет ли количество строк в одной таблице на операторы INSERT INTO?

  • MySQL: mysql Ver 14.14 Distrib 5.1.57, для debian-linux-gnu (i486) с использованием readline 5.1

Если вам нужно больше информации от меня, спросите, я предоставлю как можно больше информации.

...