[DDC-1216] A way to mark an entity to always use result cache. Like @UseResultCache class annotation. Created: 19/Jun/11  Updated: 06/Apr/12

Status: Open
Project: Doctrine 2 - ORM
Component/s: ORM
Affects Version/s: 2.x
Fix Version/s: 2.x
Security Level: All

Type: New Feature Priority: Major
Reporter: Reio Piller Assignee: Benjamin Eberlei
Resolution: Unresolved Votes: 2
Labels: None


 Description   

So that even associations, find(), findBy() etc will be affected. Very useful for entities that are being used on every request.

Is that thinkable?



 Comments   
Comment by Menno Holtkamp [ 06/Apr/12 ]

During development, I tried to have the out-of-the-box ORM layer handle as much of the queries as possible, essentially I used the Repository functions a lot:

For example, having a specific Repository extend the Doctrine EntityRepository and do something like:

 
    public function findByName($name)
    {
        $criteria = array('_name' => $name);
        return parent::findBy($criteria);
    }

Now all functionality is developed, I am optimizing performance and I find myself having to refer my Repository to my DAO layer which uses DQL, so I can enable the DQL Result Cache...

 
    public function findByName($name)
    {
       //Use the DAO so we can enable DQL ResultSet caching
        return $this->_getDao()->loadByName($name);
    }

It would be nice to be able to configure 'DQL Result Cache = on' on Repository level as well...

Generated at Wed Jun 19 05:49:22 UTC 2013 using JIRA 5.2.7#850-sha1:b2af0c8dc8537b36121c6a579fabbdf79fc919e5.