openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Fay Wang <>
Subject Re: Proposal to disable QuerySQLCache by default
Date Tue, 14 Oct 2008 16:57:46 GMT

This QuerySQLCache is to cache SelectImpl and SQLBuffer for the findBy operation without making
too much architectural change in the current findBy code path. Although it works fine in the
"normal" situations with significant performance gain, it is undoubtedly not tested in all
scenarios. A better approach is to have a cleaner architecture sitting on top of the current
framework to cover the SelectImpl/SQLBuffer cache for both findBy operation and dynamic JPQL

--- On Mon, 10/13/08, Jeremy Bauer <> wrote:

> From: Jeremy Bauer <>
> Subject: Proposal to disable QuerySQLCache by default
> To:
> Date: Monday, October 13, 2008, 12:58 PM
> Dev's,
> We've had a few regression-type issues (OPENJPA-660
> & OPENJPA-731)
> since the addition of QuerySQLCache in 1.2.0.  While this
> cache has
> shown to provide significant performance improvements for
> certain
> scenarios, I think we should consider disabling the cache
> by default.
> The main reason is the potential for future regression
> issues.
> Another reason is that we didn't follow the pattern set
> by existing
> caches.  With the exception of the query compilation cache
> (which is
> relatively static after queries are initialized), the other
> caches are
> disabled by default.  While the cache is supposed to be
> transparent,
> it could (and has shown to) affect the behavior of an
> application that
> has been working for quite some time on a prior release.
> Arguably, QuerySQLCache may just need more rigorous
> testing.  While
> additional testing may help, testing every scenario is
> difficult and
> if we miss one, regression issues due to performance
> enhancements are
> pretty hard to swallow.  I think a better approach is to
> allow users
> to enable the cache if they choose to do so.
> What do y'all think?  If we get a consensus, I'll
> open an issue to
> make the necessary changes to disable the cache.
> -Jeremy


View raw message