openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Donald Woods (JIRA)" <>
Subject [jira] Updated: (OPENJPA-878) Support default query hint for query timeout
Date Thu, 12 Mar 2009 17:22:50 GMT


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:
>             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.

View raw message