openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jody Grassel <fyrew...@gmail.com>
Subject Re: svn commit: r1536793 - in /openjpa/branches/2.3.x: openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/ openjpa-kernel/src/main/java/org/apache/openjpa/conf/ openjpa-kernel/src/main/java/org/apache/openjpa/kernel/
Date Tue, 29 Oct 2013 18:10:52 GMT
Yes, all fixes for OJ-2414 that went into 2.3.x have been checked into
trunk.


On Tue, Oct 29, 2013 at 12:50 PM, Mark Struberg <struberg@yahoo.de> wrote:

> jody, did you also fix this in trunk?
>
> I'm assuming that all bugs fixed in 2.3.x also work in and got applied to
> trunk
>
>
> txs and LieGrue,
> strub
>
>
>
> ----- Original Message -----
> > From: "jgrassel@apache.org" <jgrassel@apache.org>
> > To: commits@openjpa.apache.org
> > Cc:
> > Sent: Tuesday, 29 October 2013, 17:23
> > Subject: svn commit: r1536793 - in /openjpa/branches/2.3.x:
> openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/
> openjpa-kernel/src/main/java/org/apache/openjpa/conf/
> openjpa-kernel/src/main/java/org/apache/openjpa/kernel/
> >
> > Author: jgrassel
> > Date: Tue Oct 29 16:23:36 2013
> > New Revision: 1536793
> >
> > URL: http://svn.apache.org/r1536793
> > Log:
> > OPENJPA-2414: FinderCache does not consider active Fetch
> Groups/FetchPlan added
> > Fields
> >
> > Modified:
> >
> >
> openjpa/branches/2.3.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/FinderCacheImpl.java
> >
> >
> openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/conf/Compatibility.java
> >
> >
> openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/DelegatingFetchConfiguration.java
> >
> >
> openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfiguration.java
> >
> >
> openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfigurationImpl.java
> >
> > Modified:
> >
> openjpa/branches/2.3.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/FinderCacheImpl.java
> > URL:
> >
> http://svn.apache.org/viewvc/openjpa/branches/2.3.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/FinderCacheImpl.java?rev=1536793&r1=1536792&r2=1536793&view=diff
> >
> ==============================================================================
> > ---
> >
> openjpa/branches/2.3.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/FinderCacheImpl.java
> > (original)
> > +++
> >
> openjpa/branches/2.3.x/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/kernel/FinderCacheImpl.java
> > Tue Oct 29 16:23:36 2013
> > @@ -109,7 +109,7 @@ public class FinderCacheImpl
> >          }
> >
> >          // FinderCache only operates with Default Fetch Plans
> > -        if (!fetch.isDefaultPUFetchGroupConfigurationOnly()) {
> > +        if (!fetch.isFetchConfigurationSQLCacheAdmissible()) {
> >              return null;
> >          }
> >
> > @@ -152,7 +152,7 @@ public class FinderCacheImpl
> >              }
> >
> >              // FinderCache only operates with Default Fetch Plans
> > -            if (!fetch.isDefaultPUFetchGroupConfigurationOnly()) {
> > +            if (!fetch.isFetchConfigurationSQLCacheAdmissible()) {
> >                  return null;
> >              }
> >
> >
> > Modified:
> >
> openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/conf/Compatibility.java
> > URL:
> >
> http://svn.apache.org/viewvc/openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/conf/Compatibility.java?rev=1536793&r1=1536792&r2=1536793&view=diff
> >
> ==============================================================================
> > ---
> >
> openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/conf/Compatibility.java
> > (original)
> > +++
> >
> openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/conf/Compatibility.java
> > Tue Oct 29 16:23:36 2013
> > @@ -77,6 +77,7 @@ public class Compatibility {
> >      private boolean _singletonLifecycleEventManager = false;
> >      private boolean _filterPCRegistryClasses = false; // OPENJPA-2288
> >      private boolean _returnNullOnEmptyAggregateResult = true;   //
> OPENJPA-1794
> > +    private boolean _cacheNonDefaultFetchPlanQueries = false; //
> OPENJPA-2414
> >
> >      /**
> >       * Whether to require exact identity value types when creating
> object
> > @@ -763,4 +764,18 @@ public class Compatibility {
> >      public void setReturnNullOnAggregateResult(boolean
> > returnNullOnEmptyAggregateResult) {
> >          _returnNullOnEmptyAggregateResult =
> returnNullOnEmptyAggregateResult;
> >      }
> > +
> > +    /**
> > +     * Whether the SQL generated for queries executed with a modified
> fetch
> > plan are cached.
> > +     */
> > +    public boolean  getCacheNonDefaultFetchPlanQueries() {
> > +        return _cacheNonDefaultFetchPlanQueries;
> > +    }
> > +
> > +    /**
> > +     * Whether the SQL generated for queries executed with a modified
> fetch
> > plan are cached.
> > +     */
> > +    public void setCacheNonDefaultFetchPlanQueries(boolean bool) {
> > +        _cacheNonDefaultFetchPlanQueries = bool;
> > +    }
> > }
> >
> > Modified:
> >
> openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/DelegatingFetchConfiguration.java
> > URL:
> >
> http://svn.apache.org/viewvc/openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/DelegatingFetchConfiguration.java?rev=1536793&r1=1536792&r2=1536793&view=diff
> >
> ==============================================================================
> > ---
> >
> openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/DelegatingFetchConfiguration.java
> > (original)
> > +++
> >
> openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/DelegatingFetchConfiguration.java
> > Tue Oct 29 16:23:36 2013
> > @@ -595,4 +595,12 @@ public class DelegatingFetchConfiguratio
> >              throw translate(re);
> >          }
> >      }
> > +
> > +    public boolean isFetchConfigurationSQLCacheAdmissible() {
> > +       try {
> > +           return _fetch.isFetchConfigurationSQLCacheAdmissible();
> > +       } catch (RuntimeException re) {
> > +            throw translate(re);
> > +       }
> > +    }
> > }
> >
> > Modified:
> >
> openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfiguration.java
> > URL:
> >
> http://svn.apache.org/viewvc/openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfiguration.java?rev=1536793&r1=1536792&r2=1536793&view=diff
> >
> ==============================================================================
> > ---
> >
> openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfiguration.java
> > (original)
> > +++
> >
> openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfiguration.java
> > Tue Oct 29 16:23:36 2013
> > @@ -474,4 +474,9 @@ public interface FetchConfiguration
> >       * @since 0.4.1
> >       */
> >      public FetchConfiguration traverse(FieldMetaData fm);
> > +
> > +    /**
> > +     * Whether SQL generated by the FetchConfiguration's current
> > configuration should be cached.
> > +     */
> > +    public boolean isFetchConfigurationSQLCacheAdmissible();
> > }
> >
> > Modified:
> >
> openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfigurationImpl.java
> > URL:
> >
> http://svn.apache.org/viewvc/openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfigurationImpl.java?rev=1536793&r1=1536792&r2=1536793&view=diff
> >
> ==============================================================================
> > ---
> >
> openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfigurationImpl.java
> > (original)
> > +++
> >
> openjpa/branches/2.3.x/openjpa-kernel/src/main/java/org/apache/openjpa/kernel/FetchConfigurationImpl.java
> > Tue Oct 29 16:23:36 2013
> > @@ -148,7 +148,8 @@ public class FetchConfigurationImpl
> >          public boolean fetchGroupIsPUDefault = false;
> >          public boolean extendedPathLookup = false;
> >          public DataCacheRetrieveMode cacheRetrieveMode =
> > DataCacheRetrieveMode.USE;
> > -        public DataCacheStoreMode cacheStoreMode =
> DataCacheStoreMode.USE;
> >
> > +        public DataCacheStoreMode cacheStoreMode =
> DataCacheStoreMode.USE;
> > +        public boolean cacheNonDefaultFetchPlanQueries = false;
> >      }
> >
> >      private final ConfigurationState _state;
> > @@ -193,6 +194,8 @@ public class FetchConfigurationImpl
> >
> >          addFetchGroups(Arrays.asList(fetchGroupList));
> >          setMaxFetchDepth(conf.getMaxFetchDepth());
> > +
> > +        _state.cacheNonDefaultFetchPlanQueries =
> > conf.getCompatibilityInstance().getCacheNonDefaultFetchPlanQueries();
> >      }
> >
> >      /**
> > @@ -201,6 +204,7 @@ public class FetchConfigurationImpl
> >      public Object clone() {
> >          FetchConfigurationImpl clone = newInstance(null);
> >          clone._state.ctx = _state.ctx;
> > +        clone._state.cacheNonDefaultFetchPlanQueries =
> > _state.cacheNonDefaultFetchPlanQueries;
> >          clone._parent = _parent;
> >          clone._fromField = _fromField;
> >          clone._fromType = _fromType;
> > @@ -346,7 +350,7 @@ public class FetchConfigurationImpl
> >          return addFetchGroup(name, true);
> >      }
> >
> > -    public FetchConfiguration addFetchGroup(String name, boolean
> > recomputeIsDefault) {
> > +    private FetchConfiguration addFetchGroup(String name, boolean
> > recomputeIsDefault) {
> >          if (StringUtils.isEmpty(name))
> >              throw new UserException(_loc.get("null-fg"));
> >
> > @@ -383,7 +387,7 @@ public class FetchConfigurationImpl
> >          return removeFetchGroup(group, true);
> >      }
> >
> > -    public FetchConfiguration removeFetchGroup(String group, boolean
> > recomputeIsDefault) {
> > +    private FetchConfiguration removeFetchGroup(String group, boolean
> > recomputeIsDefault) {
> >          lock();
> >          try {
> >              if (_state.fetchGroups != null) {
> > @@ -482,6 +486,15 @@ public class FetchConfigurationImpl
> >      public boolean isDefaultPUFetchGroupConfigurationOnly() {
> >          return _state.fetchGroupIsPUDefault;
> >      }
> > +
> > +    public boolean isFetchConfigurationSQLCacheAdmissible() {
> > +        if (_state == null || _state.cacheNonDefaultFetchPlanQueries) {
> > +            return false;
> > +        } else {
> > +            // Only pctx-default matching FetchConfiguration generated
> SQL is
> > cache permissible
> > +            return _state.fetchGroupIsPUDefault;
> > +        }
> > +    }
> >
> >      public Set<String> getFields() {
> >          if (_state.fields == null) return Collections.emptySet();
> > @@ -518,6 +531,7 @@ public class FetchConfigurationImpl
> >                  _state.fields = new HashSet<String>();
> >              _state.fields.addAll(fields);
> >          } finally {
> > +            verifyDefaultPUFetchGroups();
> >              unlock();
> >          }
> >          return this;
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message