AMQ dies after few hour with OutOfMemoryErrors
----------------------------------------------
Key: AMQ-2137
URL: https://issues.apache.org/activemq/browse/AMQ-2137
Project: ActiveMQ
Issue Type: Bug
Components: Broker
Affects Versions: 5.2.0
Environment: * Linux xxx.xxx.xxx.xxx 2.6.18-53.el5 #1 SMP Wed Oct 10
16:34:19 EDT 2007 x86_64 x86_64 x86_64 GNU/Linux
* java version "1.5.0_15"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_15-b04)
Java HotSpot(TM) Server VM (build 1.5.0_15-b04, mixed mode)
* /usr/java/jdk/bin/java -Xmx2048M
-Dorg.apache.activemq.UseDedicatedTaskRunner=true -Dderby.system.home=/data
-Dderby.storage.fileSyncTransactionLog=true -Dcom.sun.management.jmxremote
-Dactivemq.classpath=/data/activemq/conf;
-Dactivemq.home=/data/activemq -Dactivemq.base=/data/activemq -jar
/data/activemq/bin/run.jar start xbean:activemq.xml
Reporter: Hakan Yakali
Priority: Critical
We were using default AMQ configuration with stomp protocol for a long time
without any problems. However, recently we change the derby db to mysql
database due to our large message sizes. This set up worked without any
problems in our test environments but in our production system AMQ is crashing
after a while with follwoing errors:
Exception in thread "ActiveMQ Connection Dispatcher: /127.0.0.1:41723"
java.lang.OutOfMemoryError: Java heap space
at java.lang.StringCoding$CharsetSE.encode(StringCoding.java:334)
at java.lang.StringCoding.encode(StringCoding.java:378)
at java.lang.String.getBytes(String.java:812)
at
org.apache.activemq.transport.stomp.LegacyFrameTranslator.convertMessage(LegacyFrameTranslator.java:69)
at
org.apache.activemq.transport.stomp.ProtocolConverter.convertMessage(ProtocolConverter.java:582)
at
org.apache.activemq.transport.stomp.StompSubscription.onMessageDispatch(StompSubscription.java:89)
at
org.apache.activemq.transport.stomp.ProtocolConverter.onActiveMQCommad(ProtocolConverter.java:564)
at
org.apache.activemq.transport.stomp.StompTransportFilter.oneway(StompTransportFilter.java:56)
at
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:40)
at
org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1207)
at
org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:793)
at
org.apache.activemq.broker.TransportConnection.iterate(TransportConnection.java:830)
at
org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98)
at
org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36)
...
after 3 messages like this then you'll see this
Exception in thread "ActiveMQ Connection Dispatcher: /127.0.0.1:41934"
java.lang.OutOfMemoryError: Java heap space
Exception in thread "ActiveMQ Connection Dispatcher: /127.0.0.1:41942"
java.lang.OutOfMemoryError: Java heap space
Exception in thread "ActiveMQ Connection Dispatcher: /127.0.0.1:48968"
java.lang.OutOfMemoryError: Java heap space
Exception in thread "ActiveMQ Connection Dispatcher: /127.0.0.1:48975"
java.lang.OutOfMemoryError: Java heap space
Exception in thread "ActiveMQ Connection Dispatcher: /127.0.0.1:48978"
java.lang.OutOfMemoryError: Java heap space
Exception in thread "ActiveMQ Connection Dispatcher: /127.0.0.1:40242"
java.lang.OutOfMemoryError: Java heap space
Exception in thread "ActiveMQ Connection Dispatcher: /127.0.0.1:40245"
java.lang.OutOfMemoryError: Java heap space
...
In another attempt we got these messages:
Exception in thread "ActiveMQ Connection Dispatcher: /127.0.0.1:50574"
java.lang.OutOfMemoryError: Java heap space
at java.lang.StringCoding$CharsetSE.encode(StringCoding.java:334)
at java.lang.StringCoding.encode(StringCoding.java:378)
at java.lang.String.getBytes(String.java:812)
at
org.apache.activemq.transport.stomp.LegacyFrameTranslator.convertMessage(LegacyFrameTranslator.java:69)
at
org.apache.activemq.transport.stomp.ProtocolConverter.convertMessage(ProtocolConverter.java:582)
at
org.apache.activemq.transport.stomp.StompSubscription.onMessageDispatch(StompSubscription.java:89)
at
org.apache.activemq.transport.stomp.ProtocolConverter.onActiveMQCommad(ProtocolConverter.java:564)
at
org.apache.activemq.transport.stomp.StompTransportFilter.oneway(StompTransportFilter.java:56)
at
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:40)
at
org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1207)
at
org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:793)
at
org.apache.activemq.broker.TransportConnection.iterate(TransportConnection.java:830)
at
org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98)
at
org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36)
ERROR log - Nested in
javax.servlet.ServletException: java.lang.OutOfMemoryError: Java heap space:
java.lang.OutOfMemoryError: Java heap space
at
java.lang.AbstractStringBuilder.expandCapacity(AbstractStringBuilder.java:99)
at
java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:393)
at java.lang.StringBuffer.append(StringBuffer.java:225)
at java.lang.StringBuffer.append(StringBuffer.java:285)
at java.util.regex.Matcher.appendReplacement(Matcher.java:739)
at java.util.regex.Matcher.replaceAll(Matcher.java:806)
at java.lang.String.replaceAll(String.java:2000)
at
org.apache.jsp.tag.web.form.tooltip_tag.doTag(org.apache.jsp.tag.web.form.tooltip_tag:75)
at
org.apache.jsp.message_jsp._jspx_meth_form_tooltip_1(org.apache.jsp.message_jsp:490)
at
org.apache.jsp.message_jsp._jspx_meth_c_otherwise_0(org.apache.jsp.message_jsp:341)
at
org.apache.jsp.message_jsp._jspx_meth_c_choose_0(org.apache.jsp.message_jsp:157)
at org.apache.jsp.message_jsp._jspService(org.apache.jsp.message_jsp:99)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:93)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:470)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:364)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
at
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
at
org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:83)
at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.apache.activemq.web.SessionFilter.doFilter(SessionFilter.java:43)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.apache.activemq.web.filter.ApplicationContextFilter.doFilter(ApplicationContextFilter.java:81)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
at
com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
at
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
ERROR log - /admin/message.jsp
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.