Hola,
Creo que por el apuro me explique mal... yo sigo las “3 reglas” que dijiste
para el nombre de los queries, pero ese no es el problema..
Te cuento de nuevo mas claro:
Para sincronizarnos rápido estoy hablando (creo) de QueryPlanCache.cs y
SoftLimitMRUCache.cs ;)
Yo tengo varios queries hechos de esta forma (invento un poco):
---------------------------------------------------------------
DetachedDynQuery query = new DetachedDynQuery(f);
// Tengo un query bastante complicado:
From f = new From(“Persona p join p.ABC a left join a.DEF ...”);
f.Where(“xyz = :xyz”);
query.SetString(“xyz”, “pepe”);
CosasDinamicas(f); // IMPORTANTE!
return query.GetExecutableQuery(session).List();
---------------------------------------------------------------
Lo que me permite hacer eso es manipular el HQL un poco. Por ejemplo:
- Agregarle Sorting dinámicamente
- Paginar el resultado y usar el TransformToRowCount (para mostrar
la cantidad de paginas…)
- Agregar filtros dinamicamente (usando f.Where().And(...))
Ahora, antes de que me putees, estoy usando criteria para hacerlo, pero a
veces es complicado y no puedo (o termino con un choclo)
La pregunta es:
*Normalmente* el HQL final no va a cambiar, pero puede ser que tenga varios
queries de este estilo. Me conviene (en complejidad y beneficio) mejorar el
"Most Recently Used" cache de queries ??
Lo ideal seria primero ver el MRU cache para ver que queries hay en el
momento y ver si hay mucha "rotación" (y por lo tanto recompilacion).
Mi idea era agrandar el tamaño del cache (que ahora es 128), what do you
think?
>> P.D. Ya que al mail le pusiste nombre y apellido esto te sale un cerveza
a pagar la prox vez que nos encontremos.
Nooo… no leiste las “Internaltional Laws of Project Leadership”? No podes
tomar, tenes que estar sobrio y programando. ;)
Saludos!,
Diego
--~--~---------~--~----~------------~-------~--~----~
Para escribir al Grupo, hágalo a esta dirección:
[email protected]
Para más, visite: http://groups.google.com/group/NHibernate-Hispano
-~----------~----~----~----~------~----~------~--~---