the RefreshQuery does not refresh LOCAL_CACHE queries
-----------------------------------------------------
Key: CAY-1013
URL: https://issues.apache.org/cayenne/browse/CAY-1013
Project: Cayenne
Issue Type: Bug
Components: Cayenne Core Library
Affects Versions: 3.0
Environment: ROP + derby
Reporter: Marcin Skladaniec
Assignee: Andrus Adamchik
During our testing we found out that the RefreshQuery does not work. The problem can be shown in the following code:
SelectQuery sq = new SelectQuery(Artist.class, someExpression);
sq.setCachePolicy(QueryMetadata.LOCAL_CACHE);
sq.setPageSize(pageSize);
// sq.setCacheGroups(new String[] { someKey }); //optional, does not change the result
List<Artist> list1 = aContext.performQuery(sq);
Artist newArtist = otherContext.newRecord(Artist.class);
otherContext.commitChanges();
otherContext.performGenericQuery(new RefreshQuery(newArtist));
// otherContext.performGenericQuery(new RefreshQuery(new String[] {someKey})); //does not make any difference
List<Artist> list2 = aContext.performQuery(sq);
//the following line prints 'false'
logger.info("cache refreshed = "+(list1.size() != list2.size()));
I tried hard to write a test case in cayenne, but I had some problems first with compiling the tests, then with actual test class/method itself.
-- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
This archive was generated by hypermail 2.0.0 : Wed Mar 19 2008 - 11:36:25 EDT