[jira] [Commented] (AMQ-5338) Run into Memory Leak problem after upgrade from 5.5.1 to 5.10
[ https://issues.apache.org/jira/browse/AMQ-5338?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14234645#comment-14234645 ] Tim Bain commented on AMQ-5338: --- What GC strategy are you using? And which JVM implementation? (Hotspot, OpenJDK, IBM, etc.) And are you sure that your full GCs were actually *full* GCs rather than just GCs that collected from Old Gen? Using G1GC in Hotspot 7u21, I've seen behavior like what you described (with an upward-sloping sawtooth pattern for Old Gen usage), but once a real full GC happened, Old Gen dropped to nearly nothing and then started the pattern again, which makes me think that what I saw was a poor implementation of the G1GC algorithm rather than anything wrong with ActiveMQ. Did you actually let things run until you hit an OutOfMemoryError? If not, you're just speculating that a memory leak actually existed, because the GC strategy is under no obligation to collect everything that can be GCed at any point in time. Run into Memory Leak problem after upgrade from 5.5.1 to 5.10 - Key: AMQ-5338 URL: https://issues.apache.org/jira/browse/AMQ-5338 Project: ActiveMQ Issue Type: Bug Affects Versions: 5.9.0, 5.10.0 Environment: Windows 2012 R2, JDK 1.7.40, CPU I5, Memory 8G Reporter: Edwin Wang Our production environment has used ActiveMQ 5.5.1 for a long time and it works well. Recently we decided to verify ActiveMQ 5.10 for prepared for upgrade. However, after we upgrade the test environment to 5.10, the MQ is easy ran into out of memory every 7-10 days. In order to compare the two, I use the same environment and same configuration for both 5.5.1 and 5.10.0. Finally, 5.10.0 ran into out of memory while 5.5.1 works well. It looks like a bug for 5.10. Below is the main part of the configration destinationPolicy policyMap policyEntries policyEntry topic= advisoryForConsumed=false advisoryForDelivery=false gcInactiveDestinations=true inactiveTimoutBeforeGC=60 producerFlowControl=true memoryLimit=3mb pendingSubscriberPolicy vmCursor / /pendingSubscriberPolicy /policyEntry policyEntry queue= advisoryForConsumed=false advisoryForDelivery=false gcInactiveDestinations=true inactiveTimoutBeforeGC=60 producerFlowControl=true memoryLimit=3mb /policyEntry /policyEntries /policyMap /destinationPolicy managementContext managementContext createConnector=true/ /managementContext plugins simpleAuthenticationPlugin users authenticationUser username=msgmanager password=Br0c@d3s0ft groups=admins/ /users /simpleAuthenticationPlugin authorizationPlugin map authorizationMap authorizationEntries authorizationEntry queue= read=admins write=admins admin=admins / authorizationEntry topic= read=admins write=admins admin=admins / /authorizationEntries /authorizationMap /map /authorizationPlugin /plugins -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (AMQ-5338) Run into Memory Leak problem after upgrade from 5.5.1 to 5.10
[ https://issues.apache.org/jira/browse/AMQ-5338?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14117134#comment-14117134 ] Edwin Wang commented on AMQ-5338: - Bellow is result from Eclipse Memory Analyzer Problem Suspect 1 One instance of com.sun.jmx.mbeanserver.JmxMBeanServer loaded by system class loader occupies 182,127,056 (57.45%) bytes. The instance is referenced by org.apache.activemq.broker.jmx.ManagementContext @ 0xf142bc0 , loaded by java.net.URLClassLoader @ 0xef3bad0. The memory is accumulated in one instance of java.util.HashMap$Entry[] loaded by system class loader. Problem Suspect 2 74,663 instances of javax.management.ObjectName, loaded by system class loader occupy 62,369,904 (19.67%) bytes. These instances are referenced from one instance of java.lang.Object[], loaded by system class loader Possible Memory Waste Duplicate Strings Found 146 occurrences of char[] with at least 10 instances having identical content. Total size is 8,593,000 bytes. Top elements include: •22 × \u\u\u\u\u\u\u\u\u... (59,338 bytes) •4,355 × JMS Client id of the Connection the Producer is on... (120 bytes) •4,355 × User Name used to authorize creation of this Produ... (120 bytes) •4,355 × The name of the destionation the Producer is on. (112 bytes) •4,355 × Is the producer configured for Async Dispatch (104 bytes) Run into Memory Leak problem after upgrade from 5.5.1 to 5.10 - Key: AMQ-5338 URL: https://issues.apache.org/jira/browse/AMQ-5338 Project: ActiveMQ Issue Type: Bug Affects Versions: 5.9.0, 5.10.0 Environment: Windows 2012 R2, JDK 1.7.40, CPU I5, Memory 8G Reporter: Edwin Wang Our production environment has used ActiveMQ 5.5.1 for a long time and it works well. Recently we decided to verify ActiveMQ 5.10 for prepared for upgrade. However, after we upgrade the test environment to 5.10, the MQ is easy ran into out of memory every 7-10 days. In order to compare the two, I use the same environment and same configuration for both 5.5.1 and 5.10.0. Finally, 5.10.0 ran into out of memory while 5.5.1 works well. It looks like a bug for 5.10. Below is the main part of the configration destinationPolicy policyMap policyEntries policyEntry topic= advisoryForConsumed=false advisoryForDelivery=false gcInactiveDestinations=true inactiveTimoutBeforeGC=60 producerFlowControl=true memoryLimit=3mb pendingSubscriberPolicy vmCursor / /pendingSubscriberPolicy /policyEntry policyEntry queue= advisoryForConsumed=false advisoryForDelivery=false gcInactiveDestinations=true inactiveTimoutBeforeGC=60 producerFlowControl=true memoryLimit=3mb /policyEntry /policyEntries /policyMap /destinationPolicy managementContext managementContext createConnector=true/ /managementContext plugins simpleAuthenticationPlugin users authenticationUser username=msgmanager password=Br0c@d3s0ft groups=admins/ /users /simpleAuthenticationPlugin authorizationPlugin map authorizationMap authorizationEntries authorizationEntry queue= read=admins write=admins admin=admins / authorizationEntry topic= read=admins write=admins admin=admins / /authorizationEntries /authorizationMap /map /authorizationPlugin /plugins -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (AMQ-5338) Run into Memory Leak problem after upgrade from 5.5.1 to 5.10
[ https://issues.apache.org/jira/browse/AMQ-5338?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14114759#comment-14114759 ] Edwin Wang commented on AMQ-5338: - I have use JConsole to monitor the OOM problem and found for 5.10, something in tenured gen can not got released after GC. And the tenured gen will grow up and up and finally caused the problem. (Actually, each time after the full GC performed, the tenured gen can release some memory but it still keep going up) Again, the GC situation is correct in 5.5.1 Run into Memory Leak problem after upgrade from 5.5.1 to 5.10 - Key: AMQ-5338 URL: https://issues.apache.org/jira/browse/AMQ-5338 Project: ActiveMQ Issue Type: Bug Affects Versions: 5.9.0, 5.10.0 Environment: Windows 2012 R2, JDK 1.7.40, CPU I5, Memory 8G Reporter: Edwin Wang Our production environment has used ActiveMQ 5.5.1 for a long time and it works well. Recently we decided to verify ActiveMQ 5.10 for prepared for upgrade. However, after we upgrade the test environment to 5.10, the MQ is easy ran into out of memory every 7-10 days. In order to compare the two, I use the same environment and same configuration for both 5.5.1 and 5.10.0. Finally, 5.10.0 ran into out of memory while 5.5.1 works well. It looks like a bug for 5.10. Below is the main part of the configration destinationPolicy policyMap policyEntries policyEntry topic= advisoryForConsumed=false advisoryForDelivery=false gcInactiveDestinations=true inactiveTimoutBeforeGC=60 producerFlowControl=true memoryLimit=3mb pendingSubscriberPolicy vmCursor / /pendingSubscriberPolicy /policyEntry policyEntry queue= advisoryForConsumed=false advisoryForDelivery=false gcInactiveDestinations=true inactiveTimoutBeforeGC=60 producerFlowControl=true memoryLimit=3mb /policyEntry /policyEntries /policyMap /destinationPolicy managementContext managementContext createConnector=true/ /managementContext plugins simpleAuthenticationPlugin users authenticationUser username=msgmanager password=Br0c@d3s0ft groups=admins/ /users /simpleAuthenticationPlugin authorizationPlugin map authorizationMap authorizationEntries authorizationEntry queue= read=admins write=admins admin=admins / authorizationEntry topic= read=admins write=admins admin=admins / /authorizationEntries /authorizationMap /map /authorizationPlugin /plugins -- This message was sent by Atlassian JIRA (v6.2#6252)