SVN main commit: Bug#211700 - Batch reading using exists
https://bugs.eclipse.org/bugs/show_bug.cgi?id=211700
doc,
http://wiki.eclipse.org/EclipseLink/DesignDocs/298985#Batching_reading_using_exist_and_IN
Adds support for a BatchFetchType and EXISTS option for performing batch
fetching.
This allows batch fetching on lobs, and may improve efficiency in some
queries.
Code review: Andrei (pending)
Changes:
- Adds support for batch fetch type to batch reading tests, and runs all
batch reading tests with each batch fetch type (JOIN, EXISTS, IN)
- Added @BatchFetch annotation and orm.xml for JPA mappings
- Added "eclipselink.batch.type" and "eclipselink.batch.size"
query hints.
- Some minor fixes, optimizations, cleanup, @Overrides, and changes of
Vector to List.
- Fixed JPQL parsing to not create duplicate ExpressinBuilders, this is
required for sub-selects to work correctly.
- Fixed ReportQuery from resetting its ExpressionBuilder
- Switched batchReading flag in ForeignReferenceMapping to
batchFetchType to allow type to be set
- Added support for batch fetching using EXISTS option (required several
fixes to our sub-select support)
- Added BatchFetchPolicy to queries to encapsulate batch fetching state,
including type and size
- Move batch fetching support up to ObjectLevelReadQuery from
ReadAllQuery, to allow nested batches to be set on ReadObjectQuerys