[ https://issues.apache.org/jira/browse/OPENJPA-878?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Donald Woods updated OPENJPA-878: --------------------------------- Attachment: OPENJPA-878-20090312-minimal.patch Updated patch (OPENJPA-878-20090312-minimal.patch) that addresses Jeremy's #1 and #4 concerns by removing setTimeout() on seq/schema/counts/DBDictionary/... and only implements it on SelectImpl and SQLStoreQuery, so the TestQueryTimeout tests will still pass for the Spec required EM.find()/executeUpdate(), getResultList() and getSingleResult() operations. Includes base QueryTimeoutException support with required updates to sql-error-codes.xml, StoreException, QueryException and DBDictionary/DerbyDictionary. Includes doc updates to include new Query/Lock timeout hint definitions. Still uses max() if a LockTimeout is specified, until OPENJPA-957 is resolved. > Support default query hint for query timeout > -------------------------------------------- > > Key: OPENJPA-878 > URL: https://issues.apache.org/jira/browse/OPENJPA-878 > Project: OpenJPA > Issue Type: Sub-task > Components: query > Affects Versions: 2.0.0 > Reporter: Donald Woods > Assignee: Donald Woods > Fix For: 2.0.0 > > Attachments: OPENJPA-878-20090305-draft.patch, > OPENJPA-878-20090306.patch, OPENJPA-878-20090310-eclipse.patch, > OPENJPA-878-20090310.patch, OPENJPA-878-20090311-eclipse.patch, > OPENJPA-878-20090311.patch, OPENJPA-878-20090311.patch, > OPENJPA-878-20090312-minimal.patch, OPENJPA-878-docs-20090311.patch > > > Support default query hint for query timeout as defined in section 3.6.4 of > the spec. > A new hint can be supplied for Java SE and Java EE environments - > javax.persistence.query.timeout // query timeout in seconds > Can be used in the following: > Methods - Query.setHint() > Annotations (via QueryHint) - NamedQuery, NativeNamedQuery > Properties - Persistence.createEntityManagerFactory, persistence.xml > The following methods can return a javax.persistence.QueryTimeoutException: > getResultList(), getSingleResult(), executeUpdate(). > If a QTE is thrown, the current transaction (if active) should not be marked > for rollback. > If the DB query timeout causes a rollback, then a PersistenceException should > be thrown instead (see 3.6.1). -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.