You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Hadrian Zbarcea (JIRA)" <ji...@apache.org> on 2014/01/31 22:56:12 UTC
[jira] [Assigned] (AMQ-4994) Web Console -
java.lang.OutOfMemoryError: Java heap space - while browsing deep queues
[ https://issues.apache.org/jira/browse/AMQ-4994?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Hadrian Zbarcea reassigned AMQ-4994:
------------------------------------
Assignee: Hadrian Zbarcea
> Web Console - java.lang.OutOfMemoryError: Java heap space - while browsing deep queues
> --------------------------------------------------------------------------------------
>
> Key: AMQ-4994
> URL: https://issues.apache.org/jira/browse/AMQ-4994
> Project: ActiveMQ
> Issue Type: Bug
> Affects Versions: 5.9.0
> Reporter: Dejan Bosanac
> Assignee: Hadrian Zbarcea
> Priority: Blocker
> Attachments: AMQ-4994.patch
>
>
> When browsing a deep queue with large number of messages, broker throws
> {code}java.lang.OutOfMemoryError: Java heap space
> at java.util.Arrays.copyOf(Arrays.java:2367)
> at java.io.CharArrayWriter.write(CharArrayWriter.java:105)
> at java.io.PrintWriter.write(PrintWriter.java:426)
> at com.opensymphony.module.sitemesh.filter.RoutablePrintWriter.write(RoutablePrintWriter.java:144)
> at org.apache.jasper.runtime.JspWriterImpl.flushBuffer(JspWriterImpl.java:181)
> at org.apache.jasper.runtime.JspWriterImpl.write(JspWriterImpl.java:412)
> at org.apache.taglibs.standard.tag.common.core.OutSupport.writeEscapedXml(OutSupport.java:239)
> at org.apache.taglibs.standard.tag.common.core.OutSupport.out(OutSupport.java:208)
> at org.apache.taglibs.standard.tag.common.core.OutSupport.doStartTag(OutSupport.java:128)
> at org.apache.jsp.browse_jsp._jspx_meth_c_out_6(org.apache.jsp.browse_jsp:323)
> at org.apache.jsp.browse_jsp.access$8(org.apache.jsp.browse_jsp:314)
> at org.apache.jsp.browse_jsp$browse_jspHelper.invoke0(org.apache.jsp.browse_jsp:426)
> at org.apache.jsp.browse_jsp$browse_jspHelper.invoke(org.apache.jsp.browse_jsp:450)
> at org.apache.jsp.tag.web.jms.forEachMessage_tag.doTag(org.apache.jsp.tag.web.jms.forEachMessage_tag:89)
> at org.apache.jsp.browse_jsp._jspx_meth_jms_forEachMessage_0(org.apache.jsp.browse_jsp:170)
> at org.apache.jsp.browse_jsp._jspService(org.apache.jsp.browse_jsp:100)
> at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:109)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
> at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:389)
> at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:486)
> at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:380)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
> at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:652)
> at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1320)
> at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
> at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
> at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1291)
> at org.apache.activemq.web.SessionFilter.doFilter(SessionFilter.java:45)
> at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1291)
> at org.apache.activemq.web.filter.ApplicationContextFilter.doFilter(ApplicationContextFilter.java:102)
> at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1291)
> at com.opensymphony.sitemesh.webapp.SiteMeshFilter.obtainContent(SiteMeshFilter.java:129){code}
> when trying to browse that queue.
> To reproduce it:
> 1. Start a broker with default configuration
> 2. Send 200k messages with
> {code}ant producer -Dmax=200000 -Ddurable=true -Dsubject=TEST{code}
> 3. Try to browse the queue
> http://localhost:8161/admin/browse.jsp?JMSDestination=TEST
> The proper solution to this problem is to implement proper pagination while browsing the messages, so users can browse through all messages showing 100 msgs (or so) at the time and not using all the available memory.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)