Issue Details (XML | Word | Printable)

Key: NUCRDBMS-435
Type: Improvement Improvement
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Andy Jefferson
Reporter: Andy Jefferson
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
DataNucleus Store RDBMS

Application of query range when datastore doesn't support it should be moved to QueryResult

Created: 15/Jul/10 03:22 PM   Updated: 20/Oct/10 09:30 AM   Resolved: 18/Oct/10 10:57 AM
Component/s: Queries
Affects Version/s: None
Fix Version/s: 2.2.0.m2


 Description  « Hide
If a datastore doesn't provide support for something like LIMIT, or a way of restricting to particular rows, then we just skip over the unrequired results and don't return them to the user. The problems with this currently are that
1. We actually cache the QueryResult which contains *all* results (including those outside the range)
2. We load up all of the range rather than allowing them to be lazy loaded

Would be better if we just merge this "range restriction" into the ForwardQueryResult/ScrollableQueryResult and they only return the results in the required range

Sort Order: Ascending order - Click to sort in descending order
Andy Jefferson added a comment - 06/Oct/10 11:04 AM
Implemented for ForwardQueryResult.

Andy Jefferson added a comment - 18/Oct/10 10:57 AM
SVN trunk has this.
Gets enabled where the datastore doesn't support processing the range in the query (e.g Oracle, DB2 etc). Can be turned off using query extension
datanucleus.processRangeInQueryResult
and setting to false.