Oh, why didn't you say so in the first place? ;-) Use a RowHandler...or better still a stored procedure.
Larry On 9/14/05, Corneliu Rudeanu <[EMAIL PROTECTED]> wrote: > > Maybe I should have described the problem that determined me to write > the patch in the first place. I use iBATIS in a project where I have to > fetch some 4 million rows and process them. Using queryForList is not a > good ideea, since it would load all data in memory when returning the > results. I need to iterate the results, not to have them all at once in > memory. > > One dirty trick I applied was to get a java.sql.Connection from > iBATIS's sqlMapClient > (sqlMapClient.openSession().getCurrentConnection()) and solve the > iteration by hand using JDBC code. I don't consider this a solution and > I would need iBATIS to offer such a "queryForIterable" method. If > queryForPaginated list should remain as now, would you agree to the new > (iterable) method to be exposed by SQLMapClient? > > Best regards, > Corneliu Rudeanu > > > --- Brandon Goodin <[EMAIL PROTECTED]> wrote: > > > Tying up connections in the PaginatedArrayList would not be a > > desireable functionality to me. I would recommend you write a version > > of PaginatedArrayList for your own personal use. If you are handling > > large resultsets I would recommend against the use of > > PaginatedArrayList anyways. It is meant for small result scrolling. > > > > Brandon > > > > On 9/13/05, Corneliu Rudeanu <[EMAIL PROTECTED]> wrote: > > > > > > > > > Hi! > > > > > > I made a patch for SQLMapClient which allows reusal of ResultSet's > > > while iterating through a paginated query list. How can I submit > > the > > > patch? > > > > > > A more detailed description: the current implementation is > > re-running > > > the query when user asks for some page, skipping the results > > > (resultSet.next()) until the requested page is read. This is a > > problem > > > while iterating through large results, and in my opinion that is > > the > > > exact purpose for having paginated queries. My patch keeps the > > > ResultSet cached in the PaginatedList, and invokes next()'s when > > user > > > asks for next page. When a page "from the past" (i.e. going to a > > page > > > with lower index than current - 1) the query runs again, with a > > > behaviour similar to current implementation. Note: the optimization > > > with next+previous pages being cached was kept in my patch. > > > > > > I have little experience with SVN. Please send some instructions on > > how > > > to submit the patch in order to be evaluated. > > > > > > Regards, > > > Corneliu Rudeanu > > > > > > > > > > > > > > > ______________________________________________________ > > > Yahoo! for Good > > > Donate to the Hurricane Katrina relief effort. > > > http://store.yahoo.com/redcross-donate3/ > > > > > > > > > > > __________________________________________________ > Do You Yahoo!? > Tired of spam? Yahoo! Mail has the best spam protection around > http://mail.yahoo.com >