Uploaded image for project: 'JBoss A-MQ'
  1. JBoss A-MQ
  2. ENTMQ-1907

TransportLogger Leak When trace parameter is enabled on Openwire Transport Connector

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Critical Critical
    • None
    • JBoss A-MQ 6.0, JBoss A-MQ 6.2, JBoss A-MQ 6.2.1
    • broker
    • None
    • Tested with standalone apache-activemq extras distributions:

      apache-activemq-5.8.0.redhat-60079
      apache-activemq-5.11.0.redhat-621084

    • Hide
      Duplicate of ENTMQ-1203
      Show
      Duplicate of ENTMQ-1203
    • Hide

      Unpack and install activemq distribution. Add "trace=true" to the openwire transport connector URI configuration.

      Start the broker. Attach VisualVm and take an initial heap dump.

      Connect and disconnect a large amount (just less than the maximum) of consumers from the broker several times.

      Initiate a GC.

      Take another heap dump.

      You should see a several thousand increase in retained, category, logger, logger adapter, and hashtable entry instances mentioned above.

      Show
      Unpack and install activemq distribution. Add "trace=true" to the openwire transport connector URI configuration. Start the broker. Attach VisualVm and take an initial heap dump. Connect and disconnect a large amount (just less than the maximum) of consumers from the broker several times. Initiate a GC. Take another heap dump. You should see a several thousand increase in retained, category, logger, logger adapter, and hashtable entry instances mentioned above.

      When trace=true is enabled on the openwire transport connector in the broker/activemq.xml,
      each time clients connect to the broker new instances of TransportLogger, org.apache.log4j.CategoryKey, org.slf4j.impl.Log4jLoggerAdapter, org.apache.log4j.Logger are created and added to the HashTable in the org.apache.log4j.Hierarchy singleton. They don't get evicted after the clients disconnect or upon GC events, leading to eventual (or more rapid in environments with a lot of connection churn) heap growth until heap is consumed.

              Unassigned Unassigned
              rhn-support-dhawkins Duane Hawkins (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: