[ 
https://issues.apache.org/jira/browse/OPENJPA-1381?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12776626#action_12776626
 ] 

Albert Lee commented on OPENJPA-1381:
-------------------------------------

The limitation/requirement of using the query cache is documented in the manual.

The query cache is enabled by default, which is a problem for a JPA compliance 
application that has the reported usage pattern.

Pinaki agrees using this JIRA to either:
- make the Query cache disabled by default.
- invalidate the cache at the appropriate call path
- potentially using QueryImpl.ignorePreparedQuery() to automatically by-pass 
the problem.

Albert Lee.

> IllegalStateException on query method call after named query is created twice.
> ------------------------------------------------------------------------------
>
>                 Key: OPENJPA-1381
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1381
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: kernel
>    Affects Versions: 2.0.0
>            Reporter: Albert Lee
>            Assignee: Albert Lee
>             Fix For: 2.0.0
>
>
> When a query method is called (e.g. setLockMode) on a named query that has 
> been created twice, an IllegalStateException is thrown:
>   Query q1 = em.createNamedQuery("xxxx");
>   ,,,,
>   Query q2 = em.createNamedQuery("xxxx");
>   q2.setLockMode(READ);
> 11078  test  TRACE  [Thread-4] Tests - Caught exception and continue: 
> java.lang.IllegalStateException: Query is neither a JPQL SELECT nor a 
> Criteria API query.
> 11078  test  TRACE  [Thread-4] DumpStack - java.lang.IllegalStateException: 
> Query is neither a JPQL SELECT nor a Criteria API query.
>       at 
> org.apache.openjpa.persistence.QueryImpl.assertJPQLOrCriteriaQuery(QueryImpl.java:377)
>       at 
> org.apache.openjpa.persistence.QueryImpl.setLockMode(QueryImpl.java:396)
>       at 
> org.apache.openjpa.persistence.QueryImpl.setLockMode(QueryImpl.java:1)
>       at 
> org.apache.openjpa.persistence.lockmgr.SequencedActionsTest.launchCommonSequence(SequencedActionsTest.java:409)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to