you will not gain something querying first the cacje and then the RDBMS
where needed.
If you can accept "eventual consistency" queries avoiding the cache
invalidation at each insert/update/delete what you are looking for is:
http://fabiomaulo.blogspot.com/2009/04/tuning-nhibernate-tolerant-querycache.html

On Wed, Nov 17, 2010 at 12:45 PM, Throckmorton <[email protected]> wrote:

> Thanks, Stefan. Will see what I can cook up.
> But I am guessing that once you have the AST, it would be fairly
> easy to generate the LINQ query. And, since Mono has implemented
> LINQ, there may be some code I can scavenge there.
>
> If this were possible, then one could really put the L2 query cache
> on drugs: not only cache the query results, but also the LINQ
> equivalent
> of the HQL, so that the LINQ query could be *run on the entity cache*.
>
> Which would mean that after an insert, the query could be updated
> rather than
> invalidated, as it is currently done.
>
>
>
>
> On Nov 17, 3:52 am, Stefan Wenig <[email protected]> wrote:
> > I was just going off on a tangent. AFAIK, what you describe cannot be
> > done, unless somebody comes and builds it. Wouldn't hold my breath
> > though, HQL was not built for in-memory execution.
> >
> > I'd rather go look for a way to serialize in-memory LINQ queries.
> >
> > http://stackoverflow.com/questions/4036489/what-is-the-easiest-way-to...
> >
> > Also, Silverlight RIA toolkit has code that does that. For remote
> > invocation, not storage, but hey...
> > problems:
> > - in RIA toolkit, serialization (client) and deserialization (server)
> > use similar, but different types.
> > - if you compile an IQueryable expression, it will compile to the
> > IQueryable and Queryable extension methods. you'd need to replace that
> > with IEnumerable and Enumerable extension methods so that they
> > actually do the work instead of just creating expression trees again.
> >
> > Other stuff might be available. Tell us if you find a way!
> >
> > HTH,
> > Stefan
> >
> > On 16 Nov., 21:12, Throckmorton <[email protected]> wrote:
> >
> > > Wait a second, I'm confused.
> >
> > > a) I start with an HQL query, which is just a string.
> > > b) NH is designed to apply this HQL to a database, by first converting
> > > to ANTLR
> > > c) I want to apply the HQL to an in-memory collection instead
> > > d) so, I could use the LINQ equivalent, if it can be generated from
> > > the HQL
> > > e) since LINQ and HQL get converted to ANTLR expression, I would need
> >
> > > HQL ==> ANTLR ===> LINQ
> >
> > > f) this may be currently impossible
> >
> > > On Nov 16, 11:12 am, Stefan Wenig <[email protected]> wrote:
> >
> > > > You're right, I skipped a step. I once asked steve strong whether he
> > > > could emit the HQL as a string for diagnostics. He said: easily.
> (much
> > > > easier than serializing and deserializing LINQ in any case...)
> >
> > > > but anyway, I digress.
> >
> > > > On 15 Nov., 11:55, Stefan Wenig <[email protected]> wrote:
> >
> > > > > BTW, internally, LINQ is converted to HQL. There might be a way to
> > > > > extract, save and execute this HQL.
> >
> > > > > On 13 Nov., 20:06, Jorge <[email protected]> wrote:
> >
> > > > > > yeah, I guess I will store a linq query along with the HQL.
> > > > > > Problem is, LINQ cannot be serialized to disk, while HQL can.
> > > > > > So, if HQL could be converted to LINQ, then this would be the
> nicest
> > > > > > solution.
> >
> > > > > > On Nov 13, 8:09 am, Jason Meckley <[email protected]>
> wrote:
> >
> > > > > > > that would be linq then :)
> >
> > > > > > > On Nov 12, 8:22 pm, Jorge <[email protected]> wrote:
> >
> > > > > > > > Hello!
> > > > > > > > Is it possible to take an HQL query and apply it to a
> collection of
> > > > > > > > entities in memory?
> > > > > > > > Something similar to LINQ?
> >
> > > > > > > > Thanks!
> > > > > > > > Jorge- Zitierten Text ausblenden -
> >
> > > > > > - Zitierten Text anzeigen -- Zitierten Text ausblenden -
> >
> > > > > - Zitierten Text anzeigen -- Zitierten Text ausblenden -
> >
> > > - Zitierten Text anzeigen -
> >
> >
>
> --
> You received this message because you are subscribed to the Google Groups
> "nhusers" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<nhusers%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/nhusers?hl=en.
>
>


-- 
Fabio Maulo

-- 
You received this message because you are subscribed to the Google Groups 
"nhusers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/nhusers?hl=en.

Reply via email to