Uploaded image for project: 'Qpid JMS'
  1. Qpid JMS
  2. QPIDJMS-543

Memory usage has increased significantly because the PooledByteBuffer(netty) are not released

    XMLWordPrintableJSON

Details

    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)

      Attachments

        1. 1.png
          838 kB
          Rishabh Handa
        2. 2.png
          1021 kB
          Rishabh Handa

        Activity

          People

            Unassigned Unassigned
            handaj Rishabh Handa
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: