You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Fernanda Pizzorno (JIRA)" <de...@db.apache.org> on 2006/07/21 16:25:14 UTC

[jira] Created: (DERBY-1560) When receiving EXTDTA object, the client should avoid keeping the entire LOB in memory for large LOBs

When receiving EXTDTA object, the client should avoid keeping the entire LOB in memory for large LOBs
-----------------------------------------------------------------------------------------------------

                 Key: DERBY-1560
                 URL: http://issues.apache.org/jira/browse/DERBY-1560
             Project: Derby
          Issue Type: Improvement
          Components: Network Client
    Affects Versions: 10.1.3.1
            Reporter: Fernanda Pizzorno
         Assigned To: Fernanda Pizzorno
             Fix For: 10.0.2.2


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.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (DERBY-1560) When receiving EXTDTA object, the client should avoid keeping the entire LOB in memory for large LOBs

Posted by "Kristian Waagan (JIRA)" <ji...@apache.org>.
    [ 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.


[jira] Updated: (DERBY-1560) When receiving EXTDTA object, the client should avoid keeping the entire LOB in memory for large LOBs

Posted by "Rick Hillegas (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/DERBY-1560?page=all ]

Rick Hillegas updated DERBY-1560:
---------------------------------

    Fix Version/s: 10.2.3.0
                       (was: 10.2.2.0)

Move to 10.2.3.0.

> When receiving EXTDTA object, the client should avoid keeping the entire LOB in memory for large LOBs
> -----------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-1560
>                 URL: http://issues.apache.org/jira/browse/DERBY-1560
>             Project: Derby
>          Issue Type: Improvement
>          Components: Network Client
>    Affects Versions: 10.1.3.1
>            Reporter: Fernanda Pizzorno
>             Fix For: 10.2.3.0
>
>
> 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.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (DERBY-1560) When receiving EXTDTA object, the client should avoid keeping the entire LOB in memory for large LOBs

Posted by "Rick Hillegas (JIRA)" <de...@db.apache.org>.
     [ http://issues.apache.org/jira/browse/DERBY-1560?page=all ]

Rick Hillegas updated DERBY-1560:
---------------------------------

    Fix Version/s: 10.2.2.0
                       (was: 10.2.1.0)

Moving to 10.2.2.0.

> When receiving EXTDTA object, the client should avoid keeping the entire LOB in memory for large LOBs
> -----------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-1560
>                 URL: http://issues.apache.org/jira/browse/DERBY-1560
>             Project: Derby
>          Issue Type: Improvement
>          Components: Network Client
>    Affects Versions: 10.1.3.1
>            Reporter: Fernanda Pizzorno
>         Assigned To: Fernanda Pizzorno
>             Fix For: 10.2.2.0
>
>
> 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.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (DERBY-1560) When receiving EXTDTA object, the client should avoid keeping the entire LOB in memory for large LOBs

Posted by "Andrew McIntyre (JIRA)" <de...@db.apache.org>.
     [ http://issues.apache.org/jira/browse/DERBY-1560?page=all ]

Andrew McIntyre updated DERBY-1560:
-----------------------------------

    Fix Version/s: 10.2.0.0
                       (was: 10.0.2.2)

Correcting (i think) fix in version, readjust as necessary.

> When receiving EXTDTA object, the client should avoid keeping the entire LOB in memory for large LOBs
> -----------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-1560
>                 URL: http://issues.apache.org/jira/browse/DERBY-1560
>             Project: Derby
>          Issue Type: Improvement
>          Components: Network Client
>    Affects Versions: 10.1.3.1
>            Reporter: Fernanda Pizzorno
>         Assigned To: Fernanda Pizzorno
>             Fix For: 10.2.0.0
>
>
> 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.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Closed: (DERBY-1560) When receiving EXTDTA object, the client should avoid keeping the entire LOB in memory for large LOBs

Posted by "Kristian Waagan (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/DERBY-1560?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Kristian Waagan closed DERBY-1560.
----------------------------------

    Fix Version/s: 10.3.3.1
       Resolution: Fixed

Closing.

> 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
>             Fix For: 10.3.3.1
>
>
> 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.


[jira] Assigned: (DERBY-1560) When receiving EXTDTA object, the client should avoid keeping the entire LOB in memory for large LOBs

Posted by "Rick Hillegas (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/DERBY-1560?page=all ]

Rick Hillegas reassigned DERBY-1560:
------------------------------------

    Assignee:     (was: Fernanda Pizzorno)

Fernanda has moved on to other responsibilities and I do not expect that she will tackle this issue.

> When receiving EXTDTA object, the client should avoid keeping the entire LOB in memory for large LOBs
> -----------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-1560
>                 URL: http://issues.apache.org/jira/browse/DERBY-1560
>             Project: Derby
>          Issue Type: Improvement
>          Components: Network Client
>    Affects Versions: 10.1.3.1
>            Reporter: Fernanda Pizzorno
>             Fix For: 10.2.3.0
>
>
> 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.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira