title: Hibernate Second-Level Query Cache not working Eager Fetching
body: <p>In NHibernate Profiler I observed that when I use eager fetching on an association, using "left join fetch" in an HQL Query or .SetFetchMode() in a Criteria Query the query no longer gets cached in the query cache.</p>
  
  <p>In fact from what I can see only very basic queries are cached.  If anyone can give me some insight into what queries get cached and which ones don't I will mark answer.</p>
  
  <p>If it makes any difference, I'm using Memcached.... Is there a better choice for L2 Cache for a query-dense system?</p>
  
  <p>I'm finding this rather challenging - if I don't use eager load I have the N+1 problem (but uses cache), if I do eager load, I get all the entities from the database, but with no caching.</p>
  
  <p>It seems like there is quite a thick dividing line, both strategies have performance improvements but both strategies rob performance from the other strategy.</p>
  
  <p>If anyone can give any insight into where abouts on this 'thick line' I should be to have optimal performance, or how to 'make the line thinner'... I would be very gateful and mark the answer.</p>