2013-08-19 4 views
0

"중첩 된"트리 유형의 주석으로 구성된 트리 유형 엔티티가 있습니다. APCu의 Doctrine Extension 버그 : "ORM TreeListener는 트리 유형을 지원하지 않습니다."

나는 PHP5.5 APCu 확장을 활성화하고, 잠시 후, 이상한 예외는 throwned된다 (이하 "유형 :"후 아무것도) ORM TreeListener does not support tree type: 웹 사이트가 좋은 약간의 시간을 작동 한 후이 작업을 수행

.

APCu 캐시를 지우면 몇 시간 동안 정상적으로 작동합니다.

Stacktrace (most recent call first): 

File "[...]/vendor/gedmo/doctrine-extensions/lib/Gedmo/Tree/TreeListener.php", line 84, in getStrategy 
    throw new \Gedmo\Exception\InvalidArgumentException($managerName." TreeListener does not support tree type: {$config['strategy']}"); 
File "[...]/vendor/gedmo/doctrine-extensions/lib/Gedmo/Tree/Entity/Repository/NestedTreeRepository.php", line 846, in validate 
    return $this->listener->getStrategy($this->_em, $this->getClassMetadata()->name)->getName() === Strategy::NESTED; 
File "[...]/vendor/gedmo/doctrine-extensions/lib/Gedmo/Tree/Entity/Repository/AbstractTreeRepository.php", line 52, in __construct 
    if (!$this->validate()) { 
File "[...]/vendor/doctrine/orm/lib/Doctrine/ORM/EntityManager.php", line 689, in getRepository 
    $repository = new $repositoryClassName($this, $metadata); 
File "[...]/app/cache/prod/jms_diextra/doctrine/EntityManager_520e1bbfadf9e.php", line 180, in getRepository 
    $repository = $this->delegate->getRepository($className); 
File "[...]/src/Mapado/ActivityFrontBundle/Controller/ActivityController.php", line 85, in viewAction 
    $rubricRepo = $this->getDoctrine()->getManager('rubric')->getRepository('MapadoRubric:Rubric'); 
File "[...]/app/bootstrap.php.cache", line 2805, in handleRaw 
    $response = call_user_func_array($controller, $arguments); 
File "[...]/app/bootstrap.php.cache", line 2779, in handle 
    return $this->handleRaw($request, $type); 
File "[...]/app/bootstrap.php.cache", line 2908, in handle 
    $response = parent::handle($request, $type, $catch); 
File "[...]/app/bootstrap.php.cache", line 2210, in handle 
    return $this->getHttpKernel()->handle($request, $type, $catch); 
File "[...]/web/app.php", line 22, in null 
    $response = $kernel->handle($request); 

당신이 날은이 버그를 해결하는 데 도움이 수있는 몇 가지 힌트를해야합니까 : 여기

는 스택 트레이스입니까?

감사합니다.

답변

1

같은 문제가 있습니다. 이것을 보시려면 https://github.com/krakjoe/apcu/issues/35 그냥 apc.serializer를 PHP로 설정하십시오

+0

사용 후 하루가 지나면 버그가 다시 나타나지 않습니다. 고맙습니다 ! –