Java 7 Ships With Severe Bug
Lisandro writes "Lucid Imagination just posted an announcement about a severe bug in the recently released Java 7. Apparently some loops are mis-compiled due to errors in the HotSpot compiler optimizations, which causes programs to fail. This bug affects several Apache projects directly — Apache Lucene Core and Apache Solr have already raised a warning, noting that the bug might be present in Java 6 as well."
So well known for product "quality"
Or is it only a desktop problem?
The bikini - security through obscurity since 1943
(/_-)
Troll fail.
Try again next time.
He was a fail troll yet got multiple people to fall for it? It's amazing how easy it is for people like the GP to continue to bait people with such obvious trolling.
o -- Joke
O -- You
\|/
/ \
Relevant part:
These problems were detected only 5 days before the official Java 7 release,
so Oracle had no time to fix those bugs, affecting also many more
applications. In response to our questions, they proposed to include the
fixes into service release u2 (eventually into service release u1, see [6]).
This means you cannot use Apache Lucene/Solr with Java 7 releases before
Update 2! If you do, please don't open bug reports, it is not the
committers' fault! At least disable loop optimizations using the
-XX:-UseLoopPredicate JVM option to not risk index corruptions.
If this was known before the release and it's as severe as it's being made out to be, why the hell didn't they postpone the release? It's not like the world is dependent on Java 7 being released on time.
This isn't a little issue, either. It's extremely irresponsible for Oracle to put this kind of release out knowing of a bug this severe without any kind of warning on it.
-- "So they told me that using the download page to download something was not something they anticipated." - Bill Gates
Damn those bugs where known but Oracle choose to ship Java 7, knowing that it would crash on some very known and used Apache libraries. (And most likely other code too).
To quote:
"These problems were detected only 5 days before the official Java 7 release,
so Oracle had no time to fix those bugs, affecting also many more. "
Here is a hint to Oracle: If you find a fatal bug 5 days before launch and don't have time to fix it, you either disable the specific optimization with the know bug, or you postpone the launch and start working on a fix. Just shipping like this is stupid.
:-D
And I was only avoiding updating it because the last time our PCs were clamoring for Java updates it was actually a (well disguised) trojan.
The next thing Windows needs to add is a "don't bother me with this update" API where software vendors need to ask the OS permission before prompting the user for updates - and also allow preference settings like "don't install a damn desktop launch icon when you update" (looking at you Adobe.) Personally, I'd set my preferences to "don't tell me about updates until they are at least a month old." There is a balance to strike between getting the latest patches for security and waiting until a patch has proven itself in the wild.
Of course, we could all just stop using software from vendors who don't do these things voluntarily (like check for bugs before pushing an update, or making an easy to access preference for launch icon settings (hint: if I've deleted the last 12 of them, I likely don't want the 13th!) but the software that I'm talking about here is Java and Acrobat - kind of hard to get around the web without those.
Hehe, when I replied there were no other replies to him. Sad.
over the seabreeze whipping past his yacht (not that he'd give a fsck about you, anyway).
You may think that the joke was obvious, but today is System Administrator Day. People who don't know that difference (or the difference between a CPU and hard drive, for that matter) is what sysadmins deal with every day. Nine times out of ten when users ask a really stupid question it's because they really don't know.
You would probably think I was joking if I told you that a user was worried because his java had a hot spot. The joke would be on you.
So how often is this practice of releasing knowingly faulty software and not notifying the users is used to release other Oracle products, such as their database, weblogic, etc.etc?
You can't handle the truth.
Except I called it the "it's still fucking Java" bug. That bug report didn't go over too well :P
Frankly, upgrading to the latest version of your development environment, literally on the day of release, seems to be rather poor practice. Since "there are a lot of places for things to break," adding another one is unwise.
You misspelled "unrelenting".
You can see a lot of this kind of bugs on Oracle products which receive the seal of "ready for production". People who work with Oracle softwares are used with this situation. Here where I work we have several bugs filled and confirmed for products like Oracle Fusion Middleware 11.1.1.5, Oracle Identity Management 11.1.1.4 and many others.
I frankly believe that Oracle has serious issues with his Q&A team.
Score 0, Informative anonymous coward.
I tend to keep my linux development machines on the bleeding edge of the distro and there is rarely a problem. To be fair I doubt that any distro would put Java 7 in its bleeding edge. The bleeding edge of any distro has some kind of QC process already.
No, but you should check your cafetiere for overflows.
> This bug affects several Apache projects directly — Apache Lucene Core
So... from Oracle's standpoint, it's a feature?
Oliver's law of assumed responsibility: If you're seen fixing it, you will be blamed for breaking it.
"upgrading to the latest version of your development environment, literally on the day of release, seems to be rather poor practice."
It's THE ONLY REASONABLE practice if you wish to actually find the bugs in your system.
If you were talking about "production environment" I would agree with you.
If the software on your development system is not working right, the only one impacted is YOU.
The sooner you install that new software and fire it up, the sooner you can submit your bug reports and the sooner they will be fixed.
And if it's your own code that is having a problem you would also rather know about this sooner than later.
If your development environment won't handle multiple JDKs then you need a new development environment. You NEED to be testing with ALL of the shipping and supported JDKs if you actually have a real product that real people use.
Most of us developers have been testing with the JDK7 beta builds for quite some time now, so your "poor practice" remark seems even more odd.
a) some of these bugs where filed months ago, and yet those hotspot "optimizations" are still on by default
b) it's true that some problems can be avoided by deliberately disabling these optimizations, but w/o raising big warning alarms to users, people aren't going to know they need to go out of their way to do that. For crash bugs, it may not be so bad -- they see the crash and google to find out why it crashed. For miss-evaluation of loops that can lead to silent data corruption it's a different story -- how would users ever know that they need to disable those options if developers don't yell and holler from the roof tops?
-- The Hoss Man
Of course it does! I love a good cup of java in the morning, but my assistant keeps making it wrong. I tried explaining how to get it Done Right, but he just doesn't listen.
In the end I had to write out a script for him to follow. So yeah, in my experience, good Java comes from a good Javascript.
Java script means Everyday coffee made acceptably!
Yeah because applications out there are magic, they read the release notes for each java release and they automatically use the correct command line switches for each of the different versions of java.
No, but if you're a sysadmin you should read release notes before making major upgrades. Not too many end-users out there using Lucene or Solr. It's also not like Sun has pushed Java 7 to end users through Java Update either (I imagine it will be quite some time before they do that).
So only the dedicated early adopters who replace what all their enterprise search software is running on with a brand-new release branch immediately after its release without reading the release notes would be affected.
If not, I hope they update their validation testing suite to compile and run the code giving problems everyone is finding and sharing.
Uh, Linux geek since 1999.
And unfortunately it infects many, many computers.
Can anybody honestly tell me why people still develop in Java? It's nothing but a gigantic pain in the ass. And why does each new version of the JVM break programs written for previous versions? Is there no backwards compatibility at all??
Making fun of dumb people since 2009
+1
Java itself is a bug. A slow, cpu wasting bug that should be done away with. I can't stand java. Every application I have ever used that was written in Java runs 10x slower than a similar app that was designed to work on the native OS.
So you're a sysadmin? Great! I have a couple of questions maybe you could help me with.
First, how do I work this foot-peddle thingy with the two buttons and a little roller on it?
Second, where can I get a new coffee cup holder? I broke mine off. You know, the cup holder that pops out of the computer when you press the little button thingy on the front.
Thanks in advance.
Sometimes the light at the end of the tunnel is the headlight of an oncoming train.
Nothing has changed in 15 years
must be it
Ha ha, but seriously: Android's Dalvik virtual machine does not use the Hotspot compiler, so I think it should be unaffected by this bug.
Why, he was talking about his coffee, of course! You crazy sysadmins just have to assume it's always about computers.
(I joke, of course.)
I am not devoid of humor.
If Google is hurting them to the tune of a Billion $ in damages for android, how much did Oracle just cost itself in terms of reputation?
May be but it isn't nice of Oracle to set it to be the default without enough testing.
"I think this line is mostly filler"
Hi, I wrote a blog article about the whole Java 7 problem with Apache Lucene and Solr. You can read it here.