OutOfMemoryError while starting Eclipse relates to RTCs FeedManager
![]()
Been running fine for Months, but this morning started getting OutOfMemoryError when starting eclipse. The error looks to be related to RTC and some FeedManager class loading of it's EMF model.
The problem also seems to related to the Oracle JRE. When running with IBM JRE it doesn't happen. Environment details: Eclipse version: Juno 4.2.2 RTC version: 4.0.2 Build id: RTC-I20130222-1633 Oracle JRE - not working: 1.7.0_51 build 1.7.0_51-b13 IBM JRE - works:1.7.0 build pwa6470_27-20131115_04 The Oracle JRE has been working fine for months. Not sure why this issue started happening today. I didn't update JREs or anything else within Eclipse. Here's the stack trace: java.lang.OutOfMemoryError: Java heap space at com.sun.org.apache.xerces.internal.util.XMLStringBuffer.append(XMLStringBuffer.java:208) at com.sun.org.apache.xerces.internal.util.XMLStringBuffer.append(XMLStringBuffer.java:226) at com.sun.org.apache.xerces.internal.impl.XMLScanner.scanAttributeValue(XMLScanner.java:978) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanAttribute(XMLDocumentFragmentScannerImpl.java:1546) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1318) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2770) at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:649) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:333) at org.eclipse.emf.ecore.xmi.impl.XMLLoadImpl.load(XMLLoadImpl.java:175) at org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl.doLoad(XMLResourceImpl.java:240) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1505) at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1284) at com.ibm.team.foundation.rcp.core.internal.EMFStorageHelper.loadModel(EMFStorageHelper.java:39) at com.ibm.team.feed.core.FeedManager.getModel(FeedManager.java:196) at com.ibm.team.feed.core.FeedManager.access$3(FeedManager.java:192) at com.ibm.team.feed.core.FeedManager$Holder.<clinit>(FeedManager.java:169) at com.ibm.team.feed.core.FeedManager.getDefault(FeedManager.java:173) at com.ibm.team.feed.ui.internal.FeedStartup.earlyStartup(FeedStartup.java:26) at org.eclipse.ui.internal.EarlyStartupRunnable.runEarlyStartup(EarlyStartupRunnable.java:87) at org.eclipse.ui.internal.EarlyStartupRunnable.run(EarlyStartupRunnable.java:66) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.ui.internal.Workbench$54.run(Workbench.java:2412) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53) |
4 answers
![]()
Hi Kurtis,
It's possible that your Eclipse workbench needs to load more stuff than before and the heap size is not big enough. The error clearly says it's the heap space. java.lang.OutOfMemoryError: Java heap spaceNormally, you need to adjust the heap size to overcome this problem. Modify the eclipse.ini file and change the -Xmx parameter accordingly. To get an idea how big the heap size you can adjust, have a read on this document. http://publib.boulder.ibm.com/infocenter/javasdk/tools/topic/com.ibm.java.doc.igaa/_1vg000139b8b453-11951f1e7ff-8000_1001.html |
![]()
I was able to create a new workspace and run Eclipse without seeing this issue. Then I copied this file from my new workspace and replaced it in my original workspace:
<workspace_dir>\.metadata\.plugins\com.ibm.team.feed.core\data.xml After that the issue was resolved for my original workspace ;) My data.xml had grown to over 12MB and seemed to contain a bunch of entries from several months ago. It also had some unicode characters in it. Not certain of the root cause, but all seems well now. |
![]()
Hi Kurtis
The below blog gives an overview of how much heap space is currently occupied( or free) which can be monitored using the IBM RTC eclipse client. This might help you make a judgement on changing the Xmx(maximum heap space) accordingly. https://www.ibm.com/developerworks/community/blogs/nfrsblog/entry/ibm_rtc_eclipse_client_and_monitoring_the_heap_space Regards, Rohit |