Ominous New Direction for Java?
May 29th, 2009
Java SE 6 Update 14 (gotta love those names) is now available. According to the release notes, a new “Garbage First (G1) Garbage Collector” is enabled. To use it:
-XX:+UnlockExperimentalVMOptions -XX:+UseG1GC
Do so with caution, however. As @kimchy noted on Twitter, the release notes include this statement:
Although G1 is available for use in this release, note that production use of G1 is only permitted where a Java support contract has been purchased.
What do you think?
Well, well, well… Sun finds yet another way to alienate its user-base and shoot itself in the head. Quelle surpize…
That can’t be real. How would they even enforce that? Maybe this is Sun’s version of “Use at your own risk”.
Bah, this is good stuff. G1 is the new GC in JDK 7 and will probably be the default. It replaces CMS (which blows) and is one of the best things in JDK 7 so far. I’m really happy that they’ve back-ported to JDK 6 so that people can get some real testing with it and provide early feedback before JDK 7 is even close. To me, that’s smart and as a potential user of G1 I appreciate having access to this early feature in an official JDK (and not needing to use a JDK 7 build).
They just want a legal out here if someone blows up their system when using an experimental feature.
So why not say that instead of pulling out the “you gotta pay us money” stuff?
@Eric: Why not?
The specter of Oracle visits upon us what is yet to come…
Causes random OutOfMemoryException in my java2d intensive application.
I think the note was written by someone who didn’t have English as a first language, and they meant something other than ‘legaly only permitted’. Otherwise it wouldn’t be relegated to the release notes, it would need to be part of the EULA. I bet they mean ‘recommended’.
Ten days later, the current text of the release notes does say this about the G1 collector:
“Usage in production settings without a Java SE for Business support contract is not recommended.”
So the original version was probably an error.