After more investigation by looking into OJB code, I found that the out of memory problem occurs in org.apache.ojb.broker.accesslayer.RsIterator.size() method. In that method, there are two ways to get size: 1) count 2) .last .getRow
I found that 2) will give me out of memory error.I tried that with pure JDBC and also got out of memory error. However, if I force to use 1), it works fine. I am using Oracle 9i. I am worndering whether there is any way to solve this problem. Currently I have to set jdbc-level="1.0" instead of "2.0" to force 1) is used. Thanks, Zhe > > -----Original Message----- > From: ZZZ Liu [mailto:[EMAIL PROTECTED] > Sent: Monday, February 02, 2004 9:01 PM > To: [EMAIL PROTECTED] > Subject: setStartAtIndex/setEndAtIndex for a very > large result set > > > Hi, All > > I am trying to do a simple query against a very > large > table with over 200,000 records. I use > QueryByCriteria > without any criteria, but settiing > setStartAtIndex(1) > and setEndAtIndex(2). Then I use getIteratorByQuery > to > get the result. However, I got OutOfMemory error. > > I tried the same thing on a relatively small table > (about 100 records) and it works fine. > > Could anybody shed some light on this? > > Thanks, > Zhe > > __________________________________ > Do you Yahoo!? > Yahoo! SiteBuilder - Free web site building tool. > Try it! > http://webhosting.yahoo.com/ps/sb/ > > --------------------------------------------------------------------- > To unsubscribe, e-mail: > [EMAIL PROTECTED] > For additional commands, e-mail: > [EMAIL PROTECTED] > > __________________________________ Do you Yahoo!? Yahoo! SiteBuilder - Free web site building tool. Try it! http://webhosting.yahoo.com/ps/sb/ --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]