У меня странное поведение Доктрины. Классы:Доктрина погрешности кеша второго уровня без ошибки в @cache для объекта
/**
* @Entity
* @Cache
*/
class UserInfo {
/**
* @Id
* @Column
*/
protected $id;
/**
* @Cache
* @OneToOne
*/
protected $extra;
public function getExtra(){
return $this->extra;
}
}
/*!! Without @Cache ANNOTATION on ExtraUserInfo !!*/
/**
* @Entity
*/
class ExtraUserInfo {
/**
* @Id
* @OnToOne
*/
protected $info;
/**
* @Column
*/
protected $extra;
}
Доктрина вызывает фатальную ошибку, когда я делаю:
$userinf->getExtra();
Фатальная ошибка: Вызов неопределенной метод Доктрины \ ORM \ Persisters \ BasicEntityPersister :: getCacheRegion() в/Lib/Доктрины /ORM/Cache/DefaultEntityHydrator.php в строке 137
Это происходит потому, что $assocPersister
является экземпляром BasicEntityPersister.
Это ошибка в доктрине, или я должен указать @Cache
на всех сущностях?