Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

EclipseLink/DesignDocs/251594

< EclipseLink‎ | DesignDocs
Revision as of 15:38, 21 October 2008 by James.sutherland.oracle.com (Talk | contribs) (Functionality)

Query Hints

ER 251594

Document History

Date Author Version Description & Notes
2008-10-21 James 0.1 Draft

Project overview

The complete functionality of the EclipseLink query framework needs to be exposed to JPA usage through query hints. Many of these hints have been requested by clients, and some have been added, this attempt to provide the complete set and allow them to be documentation and names standardized.

Concepts

Requirements

Functionality

List of new hints:

  • eclipselink.query-results-cache
  • eclipselink.query-results-cache.size
  • eclipselink.query-results-cache.expiry
  • eclipselink.query-results-cache.expiry-time-of-day
  • eclipselink.maintain-cache
  • eclipselink.session-name
  • eclipselink.prepare
  • eclipselink.jdbc.cache-statement
  • eclipselink.sql.hint
  • eclipselink.flush
  • eclipselink.jdbc.native-connection
  • eclipselink.sql
  • eclipselink.call
  • eclipselink.redirect
  • eclipselink.expression
  • eclipselink.query-type +support all query types
  • eclipselink.result-type (Map, Array, Value, Values)
  • eclipselink.cursor
  • eclipselink.cursor.initial-size
  • eclipselink.cursor.page-size
  • eclipselink.cursor.scrollable
  • eclipselink.cursor.scrollable.result-set-type (Forward, ForwardOnly, Unknown, Reverse,

ScrollInsensitive, ScrollSensitive)

  • eclipselink.cursor.scrollable.result-set-concurrency (ReadOnly, Updatable)
  • eclipselink.cursor.size-query
  • eclipselink.fetch-group.name
  • eclipselink.fetch-group.attribute
  • eclipselink.fetch-group.default
  • eclipselink.cache-usage.indirection-policy (Include, Exclude, ThrowException, Trigger)
  • eclipselink.cache-usage +support modify queries
  • eclipselink.exclusive-connection
  • eclipselink.inheritance.outer-join
  • eclipselink.history.as-of
  • eclipselink.history.as-of-scn
  • eclipselink.example-object
  • eclipselink.example-object.policy
  • eclipselink.hierarchical.connect-by
  • eclipselink.hierarchical.start-with
  • eclipselink.hierarchical.order-siblings
  • eclipselink.jdbc.first-result

In addition the hint must not be stored as a Map, as some hints require multiple values (fetch, batch). The fetch hint should also allow usage of an outer-join.

i.e. "eclipselink.join-fetch"="emp.+address"

Documentation

New hints will require documentation in user docs.

Open Issues

Decisions

Issue # Owner Description / Notes
01 Should hierarchical be hints or JPQL?

Future Considerations

Issue # Description / Notes Decision

Back to the top