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]

Reply via email to