Symfony2 + DataFixtures + Capifony - FATAL ERROR Doctrine Proxies - невозможно повторно объявить unserialize ()

Уже 2 недели борюсь с проблемой пара.

Я использую DataFixturesBundle для загрузки своих фикстур в базу данных. Все нормально работает. Я решил использовать capifony (capistrano) для развертывания своего приложения в производственной среде.

Это тоже прошло хорошо. Я реализовал все, что хотел, чтобы capifony сделала для меня, с моим приложением на рабочем сервере. Но я получаю одну ошибку, и я даже не знаю, какой пакет ее вызывает.

ВАЖНО Эта ошибка отображается только на рабочем сервере, НЕ имеет значения, нахожусь ли я в среде DEV или PROD (также DEBUG), но ошибка никогда не отображается на моих локальных хостах (проверено на 2 компьютерах, Mac и Win).

Fatal error: Cannot redeclare Proxies\TestBundleEntityPartnerProxy::unserialize() in /public_path/testapp.com/app/releases/20110929191120/app/cache/dev/doctrine/orm/Proxies/TestBundleEntityPartnerProxy.php on line 489

И это правильно. Doctrine создает два одинаковых метода для unserialize () и для serialize () в одном классе (прокси).

Это происходит только на моем производственном сервере. Я даже не могу показать проблему на моем локальном хосте. На моем локальном хосте нет двух методов с одинаковым именем (unserialize () и serialize ()). Есть одна unserialize () и одна serialize ()

Любая помощь будет оценена по достоинству.

Привет, Барт


person BartłomiejNoszka    schedule 29.09.2011    source источник
comment
Не забудьте очистить кеш; эти прокси являются «хранимыми объектами». Попробуйте изменить Doctrine на использование кэша массивов, чтобы посмотреть, устранит ли это проблему; это могло бы сузить круг вопросов.   -  person Tjorriemorrie    schedule 30.09.2011
comment
Спасибо за подсказку. Да, очищаю кеш. Согласно ссылке symfony2 на доктрину на этом сайте, я изменил 3 кеши в массив. Это не решило мою проблему.   -  person BartłomiejNoszka    schedule 30.09.2011


Ответы (2)


исправлено здесь:

https://github.com/doctrine/doctrine2/pull/177

person user482184    schedule 23.11.2011

Это не капифон, а какая-то крайняя ошибка или ситуация. Я пока не уверен, что это за причина. Некоторые подробности здесь:

http://groups.google.com/group/symfony-devs/browse_thread/thread/435a19119e9d6bdb

person weaverryan    schedule 07.10.2011