Στις 21-04-2009, ημέρα Τρι, και ώρα 13:21 +0300, ο/η Andrus Adamchik
έγραψε:
> > Shouldn't it first look in cache?
>
>
> Yes it should. Are you using the same set of parameters in both cases?
In the first case I am just calling the query "selectVehicles" which is
stored in DataMap without defining any parameters. All vehicles are
returned.
In the second case I want to retrieve a specific vehicle so I define the
parameter plate
params.put("plate", "koz-6657") and call
performQuery("selectVehicles", params, false);
The second call doesn't retrieve the requested vehicle from the cache
but instead, it sends a query to the DB.
Why is this happening? Is it normal?
> And also which version of Cayenne is this?
I am using Cayenne 2.0.4.
>
> Andrus
>
>
> On Apr 21, 2009, at 12:28 PM, Nikos Paraschou wrote:
>
> > Hello,
> >
> > I created an Object Select Query in the Modeller which selects * from
> > table Vehicles. The query has a qualifier (plate = $plate). In Result
> > Caching I selected Shared Cache and unchecked the checkbox Refresh
> > Results.
> >
> > I wrote the following code:
> >
> > Map params = new HashMap();
> > params.put("plate", "koz-6657");
> >
> > List allVehicles = context.performQuery("selectVehicles",
> > false);
> > List specificVehicle = context.performQuery("selectVehicles",
> > params, false);
> >
> > I noticed that the first call of performQuery stores the retrieved
> > Vehicle Objects in cache.
> > But the second call, instead of getting the specific vehicle from
> > cache
> > it sends a query to the database.
> >
> > Why is this happening? Shouldn't it first look in cache?
> >
> > Thank you,
> > Nikos Paraschou
> >
> >
>
This archive was generated by hypermail 2.0.0 : Tue Apr 21 2009 - 06:59:32 EDT