I’ve installed the Eclipse (eclipse-SDK-3.6.2-aix-gtk-ppc64.zip) on an AIX instance. Initially it appeared to be starting but buttons would just stop working. I eventually tracked this down to Eclipse throwing the following exception:
JVMDUMP006I Processing dump event "systhrow", detail "java/lang/OutOfMemoryError" - please wait.
JVMDUMP032I JVM requested Snap dump using '/home/atginst/eclipse/Snap.20120309.111040.8650798.0001.trc' in response to an event
JVMDUMP010I Snap dump written to /home/atginst/eclipse/Snap.20120309.111040.8650798.0001.trc
JVMDUMP032I JVM requested Heap dump using '/home/atginst/eclipse/heapdump.20120309.111040.8650798.0002.phd' in response to an event
JVMDUMP010I Heap dump written to /home/atginst/eclipse/heapdump.20120309.111040.8650798.0002.phd
JVMDUMP032I JVM requested Java dump using '/home/atginst/eclipse/javacore.20120309.111040.8650798.0003.txt' in response to an event
JVMDUMP010I Java dump written to /home/atginst/eclipse/javacore.20120309.111040.8650798.0003.txt
JVMDUMP013I Processed dump event "systhrow", detail "java/lang/OutOfMemoryError".
Exception in thread "[Timer] - Main Queue Handler" java.lang.OutOfMemoryError: native memory exhausted
at java.lang.ClassLoader.defineClassImpl(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:274)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.defineClass(DefaultClassLoader.java:188)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClass(ClasspathManager.java:580)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:550)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:481)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass_LockClassLoader(ClasspathManager.java:469)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:449)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:393)
at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:33)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:457)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:618)
at org.eclipse.equinox.internal.util.ref.Log.getService(Log.java:424)
at org.eclipse.equinox.internal.util.ref.Log.logMessage(Log.java:438)
at org.eclipse.equinox.internal.util.ref.Log.error(Log.java:155)
at org.eclipse.equinox.internal.util.impl.tpt.threadpool.ThreadPoolManagerImpl.getObject(ThreadPoolManagerImpl.java:98)
at org.eclipse.equinox.internal.util.impl.tpt.threadpool.ThreadPoolManagerImpl.execute(ThreadPoolManagerImpl.java:201)
at org.eclipse.equinox.internal.util.impl.tpt.threadpool.ThreadPoolFactoryImpl.execute0(ThreadPoolFactoryImpl.java:112)
at org.eclipse.equinox.internal.util.impl.tpt.timer.TimerImpl.run(TimerImpl.java:110)
at java.lang.Thread.run(Thread.java:736)
I have changed the -Xms and -Xmx values to different settings to no avail. Analyzing the corresponding thread dump shows that 99% of the memory in the VM is available.
Am I missing something obvious in setting this up?
After various attempts at editing the
eclipse.inifile, the only reliable way I can currently start it with is by passing the-vmparameter in the startup as follow:./eclipse -vm /Websphere/java/bin/java -vmargs -Xmx1024M &