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.

Reply via email to