[ http://issues.apache.org/jira/browse/DERBY-1276?page=all ]
Andreas Korneliussen updated DERBY-1276:
----------------------------------------
Attachment: DERBY-1276.diff
DERBY-1276.stat
A patch which fixes the problem by going to the next row (if necessary) instead
of last row.
> Calling ResultSet.isLast() on a scrollable insensitive resultset, causes the
> entire ResultSet to be populated
> -------------------------------------------------------------------------------------------------------------
>
> Key: DERBY-1276
> URL: http://issues.apache.org/jira/browse/DERBY-1276
> Project: Derby
> Type: Improvement
> Components: SQL
> Versions: 10.2.0.0
> Reporter: Andreas Korneliussen
> Assignee: Andreas Korneliussen
> Priority: Minor
> Attachments: DERBY-1276.diff, DERBY-1276.stat
>
> The following is not a bug, however some applications do not always need to
> scroll to the last row, however they do want to check isLast(). Therefore it
> is unfortunate that isLast() is expensive. The general logic in
> ScrollInsensitiveResultSet is to populate rows by demand.
> The current logic in ScrollInsensitiveResultSet to return true or false on
> isLast(), is to move to the last row. If the last row is not the same row
> number as the current, then isLast() returns false. When moving to the last
> row, all rows will be populated into the BackingStoreHashtable of the
> ScrollInsensitiveResultSet.
> This logic may be rewritten to only move to the next row. If the next row
> exists, isLast() may return false.
> (note the logic is also optimized to use beforeFirst and afterLast flags)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira