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"
Says anonymous coward
Or is it only a desktop problem?
The bikini - security through obscurity since 1943
Java is amongst the world's most widely installed malware. For some reason, Oracle was even championing the fact that this malware had over 1 billion downloads.
java != javascript
(/_-)
Troll fail.
Try again next time.
Javascript is unrelated.
What are we now, Welsh?
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.
This has NOTHING to do with emca/java script, they are not in anyway related to Java other than the really really unfortunate sharing of a brand and a little syntax also common to many other languages.
Repeal the 17th Amendment TODAY! Also Please Read http://www.gnu.org/philosophy/right-to-read.html
It's a feature.
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.
Whoosh? GP was joking, bro.
:-D
I upgraded to Java 7 on Wednesday. Thursday I tried to fire up tomcat only to have it die on me. I spent a few hours trying to get it to work and eventually gave up and reverted back to Java 6. I realize it could be something completely unrelated (I'm developing a web app with a fair amount of ins and outs, so there are a lot of places for things to break), but somehow I wish I knew about this yesterday,
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.
Hilarious AND original. You sir, are the total package.
I get my java only from a place that is evaluated by licensed inspectors: Starbucks. Why trust anyone else?
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).
If a man tells a joke, and nobody understands it, is it still funny?
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.
Java is a awesome plugin and utility with hundreds of great uses in all kinds of devices but sadly java is a deathtrap in terms of trojans, malware and viruses because its always so shoddily slapped together. Only thing worse is acrobat.
Pity sun cant hire competant developers to make the software more secure and dependable.
Except I called it the "it's still fucking Java" bug. That bug report didn't go over too well :P
Cool stary bra
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.
There are a couple of flags for hotspot then enable/disable the relevant optimizations. You could, you know, just turn them off by flicking -XX:+OptimizeStringConcat and/or -XX:+AggressiveOpts
I can’t help feeling Apache are going for some cheap political point scoring here. It isn’t like the beta of Java 7 wasn’t publicly available for months.
Score 0, Informative anonymous coward.
Java 7 has been in beta/RC/etc for a long, long time. I'm shocked such a fundamental issues(s -- there's also a nasty change that affects tokenization and may require a reindex once you upgrade) wasn't spotted sooner that 7 days prior to the official release...
There are a couple of flags for hotspot then enable/disable the relevant optimizations. You could, you know, just turn them off by flicking -XX:+OptimizeStringConcat or
-XX:+AggressiveOpts
I can’t help feeling Apache are going for some cheap political point scoring here. It isn’t like the beta of Java 7 wasn’t publicly available for months.
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.
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!
software vendors need to ask the OS permission before prompting the user for updates
That's not how it works in the windows world. Every windows software vendor has their own special install routine, their own special file locations and naming conventions, and their own special modifications to the registry. There is no standard convention, even through there is now supposed to be one. If a vendor can't find a valid technical reason to buck the system, they will do it simply because it can be done, or perhaps it offers a cheap way to make their product stand out.
If you want consistency and correctness in the packaging/installing system, where every software package is subject to the same rules and process, then you want a unix-based system. Car analogy: Windows package mangement is like driving in Singapore, where nobody follows the rules (or even knows what the rules are), horns are constantly honking for no apparent reason, people are getting cut off left and right, and cows are grazing on the highway. Unix package managment is more like riding the tomorrowland people mover in Disney World. Every car looks the same, goes the same speed, follows the same path, arrives on time, and never falls off the track. It's not quite as exciting, but excitement was never the goal.
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
run with -XX:-UseLoopPredicate
So why isn't HTML or HTML 5 coding standards adhered to so we don't need Java?
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
a user was worried because his java had a hot spot.
If the user was of Russian descent the worrying was perfectly understandable.
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.
It is so severe that: -XX:-UseLoopPredicate fixes it.... Wow, the world is going to end.
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?
If you are interested, the whole story is posted here, that lists in chronological order what happened in the last week: http://blog.thetaphi.de/2011/07/real-story-behind-java-7-ga-bugs.html
Hi, I wrote a blog article about the whole Java 7 problem with Apache Lucene and Solr. You can read it here.
What do you expect from a company whose flagship product can't even tell the difference between an empty string and a NULL? :-)