tags:

views:

436

answers:

6

I have an OutOfMemory (heap size) in eclipse using a third party plugin The plug in is Adobe Livecycle work bench and during the out of memory the plugin is retrieving via WS (using Axis) a list of around 70 workflow components on my server

Here is a extract of my call stack in Eclipse

... at org.eclipse.equinox.launcher.Main.main(Main.java:1144)

Caused by: java.lang.OutOfMemoryError: Java heap space; nested exception is: java.lang.OutOfMemoryError: Java heap space at org.apache.axis.message.SOAPFaultBuilder.createFault ...

I am using this eclipse.ini

-showlocation
-vm
C:\bea920\jdk150_04\bin\javaw.exe
-vmargs
-Xms512M
-Xmx1024M

I don't use any commandline options

I have added -Xmx1024m to my only Installed JRE in Java/Installed JREs

It seems to me that : -eclipse is not OutOfMemory itself it displays only 300Mo out of 1024Mo used it continues working properly -the plugin launch its axis parsing without giving it enough memory

Questions : - Are my suppositions right ? - How do I find where and how to give more memory to the process launched by eclipse launcher ?

A: 

See if you are passing Xms and Xmx options in the command line that you are running eclipse with. The values there will override the values in the eclipse.ini

kgiannakakis
Added to the question "I don't use any commandline options"
CC
A: 

I think you need to edit your eclipse.ini file which is located in the same directory as your eclipse exe file. It will contain the -Xms settings which you can then change.

Martin Tilsted
+5  A: 

Have you changed your launched VM arguments from the preferences window? Try this:

Window->Preferences
Java->Installed JREs
(select your jre here)->Edit..
Default VM Arguments: -Xmx1024m (or whatever size you like)

Edit 1: Based on your comments, I see that you've already tried this. I assumed that you did not try it based on the portion of your question that reads "How do I find where and how to give more memory to the process launched by eclipse launcher ?". I guess we all know what happens when we assume!

Have you considered upping the memory to something larger just to see if you can get it to run (and possibly get some more info about what is causing it to crash)? Try -Xmx2048m or larger depending on your available memory.

Can you add some information to your question that gives us an idea of what the plugin does? Is this project a web service? etc..

Mark
From the question: I have added -Xmx1024m to my only Installed JRE in Java/Installed JREs.
Ryan Emerle
Added more details about the plug-in
CC
A: 

I recommend running eclipse with the -clean option to purge any caches and re-read your settings.

Also, I've had success moving the eclipse.ini out of the eclipse directory (so there's no eclipse.ini), running eclipse, exiting, moving the ini file back and running again. I didn't bother to try to understand why that helped.

Ryan Emerle
Tried that doesn't work but that's a nice switch
CC
A: 

Add -XX:MaxPermSize=256m

This is yet-another-memory-type in Java.

Eugene
A: 

I was able to find were the problem is

  • I used Fiddler with eclipse (using proxy settings)
  • This way I was able to spot that the soap answer was an OutOfMemory
    soapenv:Fault faultcode soapenv:Server.generalException faultstring java.lang.OutOfMemoryError: Java heap space; nested exception is: java.lang.OutOfMemoryError: Java heap space
  • So the problem was on the server

  • I have now another problem : the server builds an answer which is to big for eclipse

Thank you for your answers

CC
Please consider accepting your own answer so that some confused web surfer in the future can more easily find the answer.
Mark