Wednesday, July 2, 2008

Eclipse Ganymede P2 Installer trouble

Today I tried again my workflow to install some shared installations and prepare a new blog about it.

Suddenly P2 Installer doesn't run any more. (you should read my blog Eclipse Ganymede - P2 Shared Installations (Bundle Pool) to understand the whole story ;-)

I deleted /configurations/.settings and /p2 from P2 Installer directory and started P2 Installer again. This time I got a message and was pointed to the .log file to be found in /configurations and there was really an error logged:

java.lang.OutOfMemoryError: Java heap space...

So I modified the p2installer.ini and added:

-Xms256m
-Xmx1000m
-XX:MaxPermSize=256m

Then I started again the P2 Installer

This time the installer downloads all plugins into my bundle pool location and then runs and runs and runs and runs ...

After some time I looked at the OSX activity monitor and noticed:

SWT (= P2 Installer Application) consumes 1 GB physical RAM and runs endless until I killed the task. Then I deleted the content of my bundle pool directory, the /configuration/.settings and /p2 from P2 Installer Directory.

...and started again:

Now it runs perfectly AND the P2 Installer asks at the end if I want to start the SDK :-)

Memory consumed was now only up t0 100 - 200 MB

Of course I did the next test and started P2 Installer again for the second (shared) installation and it also runs without any problems - memory consumed this time only 60 - 170 MB

You remember from my last blog Eclipse Ganymede - P2 Shared Installations (Bundle Pool) that always the first run of P2 Installer for shared installations quits without any message, the second run works well. From my experiences today it seems that it was a memory problem, but nothing was logged by P2 Installer. The installed Eclipse SDK runs without an error - but who knows if all was really correctly installed ?

I used TimeMachine to look back to .log files from previous installations, but never found a error msg that there isn't enough memory.

I added these informations to bugzilla 238947.

conclusion:
  1. add -Xms, -Xmx, -XX to the P2 installer (think the defaults from normal eclipse.app will be ok - not everyone can use 1000m like me ;-)
  2. if P2 Installer hangs: delete /configura/.settings and /p2 before restarting
  3. if P2 Installer disappears without any message: look into .log if there's something reported, dont rely on the installation, extend memory allocation, delete installed SDK and start again
ekke

No comments: