소스 검색

[DoctrineBundle] made sure that the Doctine cache is not shared between different applications

Fabien Potencier 14 년 전
부모
커밋
3bf67367c0
1개의 변경된 파일4개의 추가작업 그리고 1개의 파일을 삭제
  1. 4 1
      src/Symfony/Bundle/DoctrineBundle/DependencyInjection/DoctrineExtension.php

+ 4 - 1
src/Symfony/Bundle/DoctrineBundle/DependencyInjection/DoctrineExtension.php

@@ -351,7 +351,10 @@ class DoctrineExtension extends AbstractDoctrineExtension
         }
 
         $cacheDef->setPublic(false);
-        $cacheDef->addMethodCall('setNamespace', array('sf2orm_'.$entityManager['name']));
+        // generate a unique namespace for the given application
+        $namespace = 'sf2orm_'.$entityManager['name'].'_'.md5($container->getParameter('kernel.root_dir'));
+        $cacheDef->addMethodCall('setNamespace', array($namespace));
+
         return $cacheDef;
     }