openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Dick (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (OPENJPA-1845) the prepared query cache doesn't currently work correclty with 'SELECT IN' statements
Date Mon, 23 May 2011 19:00:48 GMT

     [ https://issues.apache.org/jira/browse/OPENJPA-1845?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Michael Dick updated OPENJPA-1845:
----------------------------------

    Fix Version/s: 2.1.1

> the prepared query cache doesn't currently work correclty with 'SELECT IN' statements
> -------------------------------------------------------------------------------------
>
>                 Key: OPENJPA-1845
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1845
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: jdbc
>    Affects Versions: 2.0.1
>            Reporter: Mark Struberg
>            Priority: Critical
>             Fix For: 2.1.1
>
>
> I have a problem with upgrading from OpenJPA-2.0.0 to 2.0.1.
> One of my services executes the following query (this is the 'id' I get in PreparedQueryCacheImpl#get(String
id) ):
> SELECT distinct e FROM Employment em, Person e WHERE em.employeeId = e.employeeId and
em.orgUnitCode = :orgUnitCode AND em.employmentPosition in (:employmentPositions) AND em.start
<= :startBefore AND em.end >= :endAfter ORDER BY e.familyName ASC
> Somehow when I execute my service a few times with different employmentPositions params
(ArrayList<String>) I still get the 'old' cached param values!
> I tried to disable this behaviour in my persistence.xml with
>   <property name="openjpa.QueryCache" value="false"/>
> but this didn't work.
> Maybe this was a side effect of the ORDER BY which made this query work in 2.0.0 (caching
of queries with ORDER BY got only fixed after 2.0.0), so I'd like to write a unit test for
it.
> As Jeremy pointed out, this can get fixed by setting <property name="openjpa.jdbc.QuerySQLCache"
value="false"/> in my persistence.xml.
> Nontheless this is a problematic bug because it is very hard to find and lead to finding
wrong data in your application (would be less problematic if it would 'just' throw an Exception).

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message