[ 
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 

 

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 memory usage by *io.netty.buffer.PoolChunk* in the 
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 getConnection() 
internally the call goes to FailoverProvider -> AmqpProvider, which internally 
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.

 

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 ByteBuffers are not 
> released (netty)
> -----------------------------------------------------------------------------------------
>
>                 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 
>  
> 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]

Reply via email to