Я недавно обновил mongoid с 2.0.2 до 2.2.0 и mongodb с 1.8.1 до 1.8.3.После обновления у меня возникают странные проблемы при обновлении пользовательского документа, в который встраивается множество других документов.Подробности см. В mongoid обсуждении в группе Google
Существует два случая, которые я выявил, но они постоянно терпят неудачу:
- Сначала подразумевается использование
accept_nested_attributes_for
дляembeds_many и удаление одного внедренного документа и добавление другого.В этой ситуации mongoid пытается вытащить и протолкнуть пользовательский документ одним вызовом обновления, о котором mongodb жалуется в журналах (verbose = true). - Второй включает глубоко внедренные документы.Mongoid пытается протолкнуть внедренный документ и установить глубоко внедренный документ в одном вызове обновления, о котором mongodb жалуется снова.
Я создал gist для легкого восстановления и регистрации информации.
Любая помощь очень ценится.
Обновление:
Принято как подтвержденная ошибка в mongoid 2.2.0 и должен быть решен в 2.2.1.На данный момент возврат к 2.0.2 решил мою проблему.
Эта проблема была исправлена в последней версии mongoid.