2011-09-29 3 views
2

2 주 동안 나는 문제 해결에 어려움을 겪고 있습니다.Symfony2 + DataFixtures + Capifony - 치명적인 오류 Doctrine Proxies - unserialize()를 다시 선언 할 수 없습니다

Im DataFixturesBundle을 사용하여 조명기를 데이터베이스에로드합니다. 모든 것이 잘 작동합니다. capifony (capistrano)를 사용하여 프로덕션 환경에 응용 프로그램을 배포하기로 결정했습니다.

잘 진행되었습니다. 나는 프로덕션 서버에서 내 앱으로 나를 위해 할 capifony 원하는 모든 것을 구현했습니다. 하지만 한 가지 오류가 발생하며 번들이 그 원인인지 알지 못합니다.

중요이 오류는 프로덕션 서버에만 표시됩니다. DEV 또는 PROD 환경 (DEBUG)에도 문제가 없지만 로컬 호스트 (두 컴퓨터에서 테스트 한 결과, & 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은 동일한 클래스 (프록시)에서 serialize()와 unserialize() 둘 다에 대해 두 가지 동일한 메소드를 만듭니다.

프로덕션 서버에서만 발생합니다. 내 로컬 호스트에서 문제를 보여줄 수도 없습니다. 내 로컬 호스트에는 동일한 이름을 가진 두 개의 메소드 (unserialize() 및 serialize())가 없습니다. 하나의 unserialize()와 하나의 serialize()가 있습니다.

어떤 도움을 주시면 감사하겠습니다.

건배, 바트

+0

캐시를 지우려면 기억; 이러한 프록시는 '저장된 엔터티'입니다. arraycache를 사용하여 Doctrine이 문제를 제거하는지 확인해보십시오. 그걸 좁힐 수 있습니다. – Tjorriemorrie

+0

힌트를 보내 주셔서 감사합니다. 예, 캐시를 비우는 중입니다. [이 사이트] (http://symfony.com/doc/current/reference/configuration/doctrine.html)의 doctrine에 대한 symfony2 참조에 따르면 배열에 3 개의 캐시가 변경되었습니다. 그건 내 문제를 해결하지 못했습니다. –

답변

관련 문제