ConcourseSuite Support

Support
Corporate
PUBLIC PROFILE

Back to topics

Discuss Installation and Maintenance

Moderator: Matt Rajkowski

Unstable after fresh installation - java.lang.OutOfMemoryError: PermGen space

You need to be logged in to post messages

This question is unanswered

Unstable after fresh installation - java.lang.OutOfMemoryError: PermGen space

11/6/2012 4:26 PM EST

I am experiencing some pretty severe memory leaks when running ConcourseSuite 6.2 (20111022) Community Edition after a fresh installation.

My installation details are below:

OS: Mac OSX 10.7.5

Java: Java HotSpot(TM) 64-Bit Server VM (build 20.10-b01-428, mixed mode)

App Server: Apace Tomcat 6.0.36

DB Server: Postgres 8.4.14

After doing all the pre-installation prep (DB setup, etc), I start Tomcat with the given Java memory options: -Xms1024m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=1024m

Plenty of memory for most any web app, even a memory hungry one.

When clicking around through the webapp, I immediately experience memory leaks when attempting to access more than one or two module pages (by selecting module tab across the top). I can get around this (after restarting the server) by changing the default view of the modules to the "View" option before clicking through the modules. I am also able to carry out most admin and other functions that deal with simple pages. The moment I attempt to view the "Dashboard" or "Overview" view of any particular module, the app hangs indefinitely and I am presented with an out of memory error in the app server logs, as seen below:

2012-11-06 13:03:03 INFO com.concursive.crm.indexer.jobs.IndexerJob - Executing indexer...
2012-11-06 13:03:03 INFO com.concursive.crm.indexer.jobs.CRMIndexerJob - Executing CRM Indexer...
Loading Lucene RAM index...
Using crm index...
java.lang.RuntimeException: field "nameLower" does not appear to be indexed
at org.apache.lucene.search.ExtendedFieldCacheImpl$5.createValue(ExtendedFieldCacheImpl.java:156)
at org.apache.lucene.search.FieldCacheImpl$Cache.get(FieldCacheImpl.java:72)
at org.apache.lucene.search.ExtendedFieldCacheImpl.getAuto(ExtendedFieldCacheImpl.java:110)
at org.apache.lucene.search.FieldSortedHitQueue.comparatorAuto(FieldSortedHitQueue.java:420)
at org.apache.lucene.search.FieldSortedHitQueue$1.createValue(FieldSortedHitQueue.java:185)
at org.apache.lucene.search.FieldCacheImpl$Cache.get(FieldCacheImpl.java:72)
at org.apache.lucene.search.FieldSortedHitQueue.getCachedComparator(FieldSortedHitQueue.java:168)
at org.apache.lucene.search.FieldSortedHitQueue.<init>(FieldSortedHitQueue.java:56)
at org.apache.lucene.search.TopFieldDocCollector.<init>(TopFieldDocCollector.java:43)
at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:122)
at org.apache.lucene.search.Hits.getMoreDocs(Hits.java:100)
at org.apache.lucene.search.Hits.<init>(Hits.java:77)
at org.apache.lucene.search.Searcher.search(Searcher.java:55)
at com.concursive.crm.indexer.LuceneIndexerSearch.search(Unknown Source)
at com.concursive.crm.web.modules.accounts.actions.Accounts.executeCommandViewAll(Unknown Source)
at com.concursive.crm.web.modules.accounts.actions.Accounts.executeCommandDefault(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.concursive.crm.web.controller.servlets.ControllerServlet.service(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.concursive.crm.web.controller.filters.ClientTypeRequestFilter.doFilter(Unknown Source)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:680)
--- value: 3
--- value: 3
--- value: 3
--- value: 3
--- value: 3
--- value: 3
--- value: 3
--- value: 3
--- value: 3
--- value: 3
--- value: 3
--- value: 3
Using crm index...
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.concursive.crm.web.controller.servlets.ControllerServlet.service(Unknown Source)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.concursive.crm.web.controller.filters.ClientTypeRequestFilter.doFilter(Unknown Source)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:680)
Caused by: java.lang.OutOfMemoryError: PermGen space
at sun.awt.AWTAccessor.getComponentAccessor(AWTAccessor.java:546)
at javax.swing.UIManager.initialize(UIManager.java:1465)
at javax.swing.UIManager.maybeInitialize(UIManager.java:1410)
at javax.swing.UIManager.getDefaults(UIManager.java:645)
at javax.swing.UIManager.getColor(UIManager.java:687)
at org.jfree.chart.JFreeChart.<clinit>(JFreeChart.java:250)
at org.jfree.chart.ChartFactory.createTimeSeriesChart(ChartFactory.java:1646)
at com.concursive.crm.web.modules.leads.actions.Sales.executeCommandDashboard(Unknown Source)
... 21 more
Exception. MESSAGE = null
> No Action found, so doing nothing.

This is a fairly fatal exception as the JVM becomes rogue even after attempting to shutdown Tomcat. It must be killed with a term signal.
Wondering if anyone else out there is exeperiencing this problem and whether there are any solutions to it.

1. 11/6/2012 4:34 PM EST
Default user photo

By Matt Rajkowski

Concursive Corporation
Product Design

airplane-icon-100x100.png

On Mac OSX, try the headless setting. The log you sent says something about JFreechart and UI right before the error.

For the record, the max perm size I've ever used is more like 512m. Here's my Mac dev settings...

-Xms256m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=256m -XX:+UseParNewGC -Djava.awt.headless=true

2. 11/6/2012 5:32 PM EST

Using the Java options recommended in your reply does not fix the problem. The application still hangs indefinitely when I attempt to view any "Dashboard" view on any of the modules. However, I no longer see any stracktraces in the application server log. The last line of the log at hang time is:

DefaultServlet-> Initializing Connection Element

2 results found