Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
EclipseLink/Examples/JPA/Migration/OpenJPA/QueryHints
Migrating OpenJPA to EclipseLink JPA: Query Hints
NOTE: Under Construction
Within a JPA application there is support for specifying query hints which define provider specific behaviour. These hints can be specified in annotations, within the ORM XML files, or within application code. The query hint names are strings and therefore do not typically force compile time dependencies on a particular provider but the values for these hints may introduce dependencies. The following sections outline OpenJPA query hints and their corresponding EclipseLink JPA features. If any query hint related migration information is missing or incomplete please log a documentation enhancement request referencing this page and provide details of your migration challenge.
OpenJPA Hint | Description | EclipseLink JPA Equivalent Functionality |
---|---|---|
openjpa.hint.OracleSelectHint | Specifies an Oracle specific query hint to be generated | eclipselink.sql.hint |
openjpa.FetchPlan.ReadLockMode | Values= READ or WRITE | JPA 2.0's Query.setLokMode(LockModeType) |
openjpa.hint.OptimizeResultCount | Integer value greater than zero | QueryHints.JDBC_FETCH_SIZE |
openjpa.FetchPlan.Isolation | ||
openjpa.FetchPlan.MaxFetchDepth | FetchGroup depth specified by attributes in EclipseLink and not by numeric depth | |
openjpa.FetchPlan.FetchBatchSize | Query.setMaxResults QueryHints.JDBC_MAX_ROWS | |
openjpa.FetchPlan.LockTimeOut | Number of ms to wait to acquire a lock (-1 means no limit) | QueryHints.PESSIMISTIC_LOCK_TIMEOUT |
openjpa.FetchPlan.EagerFetchMode | FetchGroup loading is done based on attributes specified or in the case of the default FetchGroup the lazy configuration of the mappings. | |
openjpa.FetchPlan.SubclassFetchMode | Determines how to eager-fetch subclass data | FetchGroup attributes can be for any mapped attribute in the target entity or its mapped parent classes. |