db-derby-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kathey Marsden <kmarsdende...@sbcglobal.net>
Subject Re: Iterating through large result set in network mode causes OutOfMemoryException
Date Fri, 08 Feb 2008 21:56:59 GMT
Briggs wrote:
> Well, here is a very simple test case. It's not junit or anything, but
> if you look at the code, by calling the main method it will:
>
> 1) Start up a network server
> 2) Create a test table
> 3) Insert 20K duplicate records
> 4) Attempt to iterate though them, and fail.
>
> If you wish to test the reading portion (after you've created a
> database), you'll need to comment out the code that does so.  Sorry,
> haven't the time to get too fancy with the test case.  But, you can
> see that it will fail.  Plus, when you run out of memory, don't forget
> to kill the process or you'll have a db running on 2222.
>
> If you are running unix, you'll need to change the connection string
> to point to a valid dir (other than c:/tmp).
>
> Is this good enough?
>
> Oh, if you want, you can also just create the database and insert the
> data, start a network server, then connect via ij.  Then just do a
> "select * from test_case.test_lob"; you will eventually get an index
> out of bounds exception because the server caused an error.
>
> Yes, the code is ugly, but I didn't think connection handling and
> transaction management was important.
>
>
> On Feb 8, 2008 1:51 PM, Briggs <acidbriggs@gmail.com> wrote:
>   
>> Working on a test case now...
>>
>>
>> On Feb 8, 2008 1:29 PM, Kathey Marsden <kmarsdenderby@sbcglobal.net> wrote:
>>     
>>> Øystein Grøvlen wrote:
>>>       
>>>> This looks like DERBY-3354.  It is a bug, and as far as I can tell the
>>>> cause has been identified, so it should probably be possible to fix
>>>> this.  For client/server you will probably also need the fix for
>>>> DERBY-2892.
>>>>
>>>>         
>>> Since he said his case works fine in embedded mode, I don't think it is
>>> DERBY-3354.  Briggs, could you post a reproducible test case so we can
>>> see if this is a new issue.
>>>
>>> Kathey
>>>
>>>
>>>       
>>
>>
>> --
>> "Conscious decisions by conscious minds are what make reality real"
>>
>>     
>
>
>
>   
Running against 10.3.2.1 with IBM  JDK 1.5 I am not seeing the OOM 
exception. Should I be running with a smaller heap?  I also had to add 
this line to the program to avoid a no suitable driver error.
    Class.forName("org.apache.derby.jdbc.ClientDriver").newInstance();

The output ends with:
....
Read: 19997 records.
Read: 19998 records.
Read: 19999 records.



Mime
View raw message