[ 
https://issues.apache.org/jira/browse/DERBY-1560?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12871105#action_12871105
 ] 

Kristian Waagan commented on DERBY-1560:
----------------------------------------

I propose that we close this issue, because I believe the issue went away when 
locators were introduced.

Note that some actions will result in the entire LOB being kept in memory, for 
instance executing Clob.getSubString(1, <length>) and Blob.getBytes(). This is 
a necessity, and is as designed.

> When receiving EXTDTA object, the client should avoid keeping the entire LOB 
> in memory for large LOBs
> -----------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-1560
>                 URL: https://issues.apache.org/jira/browse/DERBY-1560
>             Project: Derby
>          Issue Type: Improvement
>          Components: Network Client
>    Affects Versions: 10.1.3.1
>            Reporter: Fernanda Pizzorno
>
> When a LOB is streamed from the Server to the Client, the Client reads all 
> the data from the stream into a byte array. This can cause OutOfMemoryError 
> if the LOB is large > than total memory in the VM.
> To avoid this problem, instead of reading the streamed data into a byte 
> array, the Client could read the data into a stream which will keep the data 
> in memory when possible and store the data on disk when there is not enough 
> memory. This stream could be based on the implementation suggested in 
> DERBY-1341.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to