[
https://issues.apache.org/jira/browse/QPIDJMS-543?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Rishabh Handa updated QPIDJMS-543:
----------------------------------
Description:
* We are using JMS to send and receive messages from queue asynchronously
* We have observed a high heap memory usage by *io.netty.buffer.PoolChunk* -
(heap dump: screenshot attached 1)
* These PoolChunks are allocated during creation of a connection to the queue
-
** From stacktrace(screenshot attached 2) - when we invoke
*jmsConnectionFactory.createConnection()*
internally the call goes to *FailoverProvider* -> *AmqpProvider*, which
invokes *ByteBufferUtil* to create *PooledByteBuffer*
** These buffers are created on the heap memory (io.netty.buffer.PoolChunk of
*16 MB)*
* These PooledByteBuffer are not released from the heap memory even after the
connection is closed. Due to which, the memory usage has increased.
For more details - please go through this issue: [Increased memory footprint in
4.1.43.Final · Issue #9768 · netty/netty
(github.com)|https://github.com/netty/netty/issues/9768]
was:
* We are using JMS to send and receive messages from queue asynchronously
* We have observed a high heap memory usage by *io.netty.buffer.PoolChunk* -
(heap dump: screenshot attached 1)
* These PoolChunks are allocated during creation of a connection to the queue
-
** From stacktrace(screenshot attached 2) - when we invoke
*jmsConnectionFactory.createConnection()*
internally the call goes to *FailoverProvider* -> *AmqpProvider*, which
invokes *ByteBufferUtil* to create *PooledByteBuffer*
** These buffers are created on the heap memory (io.netty.buffer.PoolChunk of
*16 MB)*
* These PooledByteBuffer are not released from the heap memory even after the
connection is closed. Due to which, the memory usage
For more details - please go through this issue: [Increased memory footprint in
4.1.43.Final · Issue #9768 · netty/netty
(github.com)|https://github.com/netty/netty/issues/9768]
> Memory usage has increased significantly because the PooledByteBuffer(netty)
> are not released
> ---------------------------------------------------------------------------------------------
>
> Key: QPIDJMS-543
> URL: https://issues.apache.org/jira/browse/QPIDJMS-543
> Project: Qpid JMS
> Issue Type: Bug
> Components: qpid-jms-client
> Affects Versions: 0.56.0
> Environment: java - 11
> qpid-jms-client - 0.56.0
> netty - 4.1.65.Final
> Reporter: Rishabh Handa
> Priority: Major
> Labels: memory-analysis, memory-dump, memory-leak
> Attachments: 1.png, 2.png
>
>
> * We are using JMS to send and receive messages from queue asynchronously
> * We have observed a high heap memory usage by *io.netty.buffer.PoolChunk* -
> (heap dump: screenshot attached 1)
> * These PoolChunks are allocated during creation of a connection to the
> queue -
> ** From stacktrace(screenshot attached 2) - when we invoke
> *jmsConnectionFactory.createConnection()*
> internally the call goes to *FailoverProvider* -> *AmqpProvider*, which
> invokes *ByteBufferUtil* to create *PooledByteBuffer*
> ** These buffers are created on the heap memory (io.netty.buffer.PoolChunk
> of *16 MB)*
> * These PooledByteBuffer are not released from the heap memory even after
> the connection is closed. Due to which, the memory usage has increased.
>
> For more details - please go through this issue: [Increased memory footprint
> in 4.1.43.Final · Issue #9768 · netty/netty
> (github.com)|https://github.com/netty/netty/issues/9768]
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]