Re: Cayenne 3.0 cache RefreshQuery for NamedQuery

From: Andrus Adamchik (andru..bjectstyle.org)
Date: Tue Jul 20 2010 - 13:48:55 UTC

  • Next message: Evgeny Ryabitskiy: "Re: Cayenne 3.0 cache RefreshQuery for NamedQuery"

    Sorry for not replying to this earlier. Per my comment on CAY-1465, I
    suggest just map entity event listeners to do cache invalidation. I am
    personally doing that everywhere.

    Andrus

    On Jul 13, 2010, at 12:56 PM, Evgeny Ryabitskiy wrote:

    > Hello 2 everyone!
    >
    > I was studing Group Cache stuff. And it's pretty cool!
    > Only thing I am missing is marking some NamedQuery as Group Refresh
    > Query.
    >
    > It can be useful for this case:
    >
    > I have 2 selects (NamedQueries) for table Artists, which have SHARED
    > cache policy:
    >
    > MyArtistsSelectQuery1 from group ArtistsTableGroup:
    > select * from Artists where isModern = 0
    >
    > MyArtistsSelectQuery2 from group ArtistsTableGroup:
    > select * from Artists where isModern = 1
    >
    > And one insert:
    > MyArtistsInsertQuery1
    > insert into Artists values (....) .....
    >
    >
    > Select NamedQueries are marked by properties in XML
    > <property name="cayenne.GenericSelectQuery.cacheStrategy"
    > value="SHARED_CACHE"/>
    > <property name="cayenne.GenericSelectQuery.cacheGroups"
    > value="ArtistsTableGroup"/>
    > And it's cool!!!
    >
    > So, I would like to mark insert query as trigger for cache group
    > removingin SHARED cache, like implicit execution of:
    > domain.getQueryCache().removeGroup("ArtistsTableGroup");
    > after successful insert.
    >
    >
    >
    > I haven't find this feature. Am I missed something or shall we add one
    > more JIRA issue for 3.1?
    >
    >
    > Evgeny.
    >



    This archive was generated by hypermail 2.0.0 : Tue Jul 20 2010 - 13:49:29 UTC