Calling ResultSet.isLast() on a scrollable insensitive resultset, causes the 
entire ResultSet to be popultated
--------------------------------------------------------------------------------------------------------------

         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
 Assigned to: Andreas Korneliussen 
    Priority: Minor


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

Reply via email to