Some thoughts on the Java u21 problem

I see all of the platform UI bugs and https://bugs.eclipse.org/bugs/show_bug.cgi?id=319514 caught my attention and I have made several comments on it. I thought I would share my observations and suggestions at this point, being a member of the Eclipse community.

Observations:

  1. This problem happens when you run Helios on Windows (possibly other platforms) with the current version of Java (Java 6 update 21). The problem also manifests in the worst possible way, it shows up as a hang (or possibly and infinite loop). As I write this, I’m sure that hundreds of hours are being spent trying to figure out what’s going on by people trying to use Eclipse.
  2. If there is such a thing as an emergency about things not working right, I would say this would be it. Downloading the current stuff is broken.
  3. This is an Eclipse bug. We are using the internals of software that we should not be, it changed under us and it broke our stuff. Also we did not certify with this software. We need to fix this problem. Complaining about that Oracle changed it and depending on them to fix it is a disservice to our users. There are many many examples of this sort of thing happening (mainly in SWT) and in most cases Eclipse seems to do the right thing by working around the problem and fixing Eclipse so that the people using Eclipse have the best experience possible.
  4. The bug happens with many previous versions of Eclipse due to the Oracle VM change, and some solution needs to be provided to them.
Suggestions:
  1. Fix Helios right now. Today if possible. Yes this will require a 3.6a or whatever, but we have to make this configuration seamlessly work.
  2. I know a lot of work has been done to develop workarounds and solutions for the previous releases. These need to be widely communicated, including on the front page of eclipse.org. We need to get the word out to help people. And we have to keep in ming people will be looking for a solution to a hang.
  3. Improve our release certification process. There is a Java release process where they test and and provided releases available for testing and certification precisely so that these problems don’t happen. We are one of the leading IDEs for Java, we should be totally on top of this process (including having relationships internally with Oracle so that mechanism are in place such that stuff does not get broken if necessary). We have the means to see this is coming and we should have prepared for it by certifying Helios on the u21 version of Java. I know we are pretty formal about talking about our reference platforms, we need to do better here.
  4. Have some policies about accessing the internals of dependent products. Of course it’s necessary to do this in a lot of areas (particularly SWT and Equinox), but where this is done there should be some extra review and also some more centralized tracking so that we understand these dependencies and can consider this in our certification. Also having the extra review will minimize the temptation to quickly add something that’s an internal dependency. People should try to think long and hard about this before doing it to see if there is another way.
This problem is a very serious problem, and we should do like what they do when they investigate airplane crashes, we should look at this from every angle and get as much learning  out of this as possible and implement improvements of the process at all levels to make sure it does not happen again.
About these ads

About francisu

Senior Architect at Talend, responsible for data transformation and other cross-product issues. Also committer in Eclipse Platform UI (mainly Common Navigator) and maintainer of Jenkins EC2 plugin.
This entry was posted in Uncategorized. Bookmark the permalink.

4 Responses to Some thoughts on the Java u21 problem

  1. Adrian says:

    Out of curiosity, why is that bug closed to the public? Even logged into my Eclipse Bugzilla account, I get “You are not authorized to access bug #319514.” Is this intentional, or an oversight?

  2. Francis Upton says:

    @Adrian, I did not realize the bug was not public. I don’t understand why, and I’m asking about it now. Hopefully it can be made public soon.

  3. Francis Upton says:

    @Adrian, it’s public now.

  4. CHENG Yuk says:

    This is a Oracle bug.

    The size of permgen shouldn’t be fixed at the first place. Eclipse workaround this oracle bug.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s