Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-17380

(7.2.z) WFCORE-4600 - Memory leak caused by ByteBufferSlicePool usage

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 7.2.4.CR1, 7.2.4.GA
    • 7.2.3.CR2
    • IO, Management
    • None
    • Hide
      • Configure -XX:MaxDirectMemorySize=16M for server to hit error earlier . E.g. add into JAVA_OPTS of standalone.conf
      • run server
      • Run this reproducer
        loop.sh
        #!/bin/bash
        for i in {1..10000}
        do
          echo $i
          ${jboss.home}/bin/jboss-cli.sh -c ":reload"
          if [ $? == 1 ]
          then
              break
          fi
        done
        

      Eventually you will get an OutOfMemoryError, very soon if tested without XNIO-345 fix

      Show
      Configure -XX:MaxDirectMemorySize=16M for server to hit error earlier . E.g. add into JAVA_OPTS of standalone.conf run server Run this reproducer loop.sh #!/bin/bash for i in {1..10000} do echo $i ${jboss.home}/bin/jboss-cli.sh -c ":reload" if [ $? == 1 ] then break fi done Eventually you will get an OutOfMemoryError, very soon if tested without XNIO-345 fix

      ByteBufferSlicePool is used at two points in the server:

      • BufferPoolService (io subsystem)
      • ManagementHttpServer (domain http server)

      This pool should:

      • whenever possible be static, i.e., be not recreated at every reloaded
      • when not possible, we must use the clean() method added via XNIO-317 and fixed by XNIO-346

              mstefank Martin Stefanko
              mstefank Martin Stefanko
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: