[
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.