Access intent implications for dynamic query

WebSphere Application Server gives you the option to set access intent policies for your entity enterprise beans as a way of managing their transfer of data with the underlying datastore. An access intent policy controls the isolation level used on the data source connection, as well as the database locks used during data retrieval. By manipulating these elements, one can maximize the efficiency of your application's data flow. To learn more, begin with the topics Access intent policies and Concurrency control.

When formulating dynamic queries, keep in mind the following considerations concerning their interaction with access intent policies:

  • A dynamic query uses the first ASN name in the FROM clause to determine access intent.

  • The collection increment attribute of an access intent policy is not used in processing a dynamic query.

  • When performed on entity beans that have a pessimistic-Update access intent policy, your dynamic queries must return updateable collections. Therefore we need to formulate your query statements to return only collections of entity beans, not collections of CMP fields. For example, the statement select object(c) from Customer is valid for a dynamic query performed under the constraint of a pessimistic-Update policy. The statement select c.name from Customer c, however, is not a valid dynamic query under this constraint.

  • Using pessimistic-Update policy places restrictions on the types of query expressions. The restrictions depend on the back end database type and release. Refer to the topic Access intent -- isolation levels and update locks for details.


 

See Also


Access intent service
Dynamic query performance considerations

 

Related Tasks


Using the dynamic query service

 

Related Information