[
https://issues.apache.org/jira/browse/QPID-6766?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15173877#comment-15173877
]
Keith Wall commented on QPID-6766:
----------------------------------
Discussed in today's estimation session:
* The existing store APIs are good for chunking already
* Need to change the store implementations to respect the chunk size that is
passed by the caller, and on retrieval, produce chunks of the same size.
* This work will require a message store format change. There should be an
upgrader for the BDB and (later) the Derby path
* We should perftest the 1MB message use-case to understand the effect of the
change.
> [Java Broker/Message Stores] Chunk message content in order to optimise
> memory usage
> ------------------------------------------------------------------------------------
>
> Key: QPID-6766
> URL: https://issues.apache.org/jira/browse/QPID-6766
> Project: Qpid
> Issue Type: Improvement
> Components: Java Broker
> Reporter: Alex Rudyy
> Fix For: qpid-java-6.1
>
>
> At the moment, we store message content in BDB Message Store in one chunk. On
> content saving we create a byte array and copy content bytes from a direct
> memory into heap in order to save that on disk. As result, the message
> content is fully duplicated in direct memory and heap. Such implementation
> causes an extensive and inefficient heap usage on storing of big messages
> which might cause OOM errors due to heap consumption on message saving. We
> can optimize heap memory usage by saving message in chunks with a size equal
> to Direct Byte Buffer size which is used to hold content in the direct
> memory.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]