Re: Caching

From: Andrus Adamchik (andru..bjectstyle.org)
Date: Thu May 20 2010 - 08:09:46 UTC

  • Next message: Andrus Adamchik: "Re: Caching"

    What type of ObjectContext is this? The behavior you are seeing may
    happen in ROP, but a DataContext on the other hand should always grab
    the cache instance from the parent DataDomain:

        ..verride
         public QueryCache getQueryCache() {
             if (queryCache == null) {
                 synchronized (this) {
                     if (queryCache == null) {

                         DataDomain domain = getParentDataDomain();
                         queryCache =
    domain.getQueryCacheFactory().getQueryCache(
                                 domain.getProperties());
                     }
                 }
             }

             return queryCache;
         }

    Andrus

    On May 19, 2010, at 11:17 AM, Gary Jarrel wrote:

    > Hi Guys,
    >
    > I seem to full of questions today!
    >
    > In the modeler I've got org.apache.cayenne.cache.OSQueryCacheFactory
    > for
    > Query Cache Factory, 5000 objects and using shared cache.
    >
    > I can see OSCache initializing in the logs and everything appears to
    > be
    > fine.
    >
    > However when I try to get the cache from the ObjectContext like so:
    >
    > QueryCache cache = ((BaseContext) getObjectContext()).getQueryCache();
    >
    > The cache that is being returned is
    > the org.apache.cayenne.cache.MapQueryCache
    >
    > I've traced the calls and can see that the call got getQueryCache()
    > goes
    > to MapQueryCacheFactory despite the fact that the modeler
    > specifies OSQueryCacheFactory
    >
    > Am I doing something wrong here?
    >
    > Thank you
    >
    > Gary



    This archive was generated by hypermail 2.0.0 : Thu May 20 2010 - 08:10:19 UTC