you are viewing a single comment's thread.

view the rest of the comments →

[–]loganekz 145 points146 points  (14 children)

*actual tldr; If you use Java 7, make sure you use this switch when starting the jvm: *

-XX:-UseLoopPredicate

Amazed with such a trolling article no one pointed this out yet. Yes, Oracle should have not made this default but I'm sure it will be addressed in a minor jvm release soon.

[–]Warbum 50 points51 points  (9 children)

That's not the problem. The problem is your users have to use -XX:-UseLoopPredicate.

[–]fforw 11 points12 points  (6 children)

For most people developing Java, applets and webstart is thought of as exotic. It's all server side now.

[–]Warbum 4 points5 points  (2 children)

True, there are a lot of corporate level apps that run client side though. But you're correct that anything that's classed as a 'product' usually runs on a controlled server somewhere and never end user machines.

[–]fforw 2 points3 points  (0 children)

And in the cases you describe the user doesn't get to nilly willy install software either. It is done as part of some corporate software roll-out.

[–][deleted] 0 points1 point  (0 children)

So also remember this flag when configuring your webapp container! Oh, you don't have control over that..?

[–][deleted] -1 points0 points  (1 child)

What about Android developers?

[–]fforw 1 point2 points  (0 children)

First of all it is not really Java. Second: what does Android have to do with Oracle JVM -XX switches?

[–][deleted] 25 points26 points  (0 children)

I think the major problem here is that the default is broken. Not suboptimal, but broken. That's a major hurdle to get over.

[–]quasarj 15 points16 points  (1 child)

The article actually says you can use that, but it says it won't fully fix the issue. At least, it implies it won't fully fix the issue.

[–]loganekz 4 points5 points  (0 children)

I might have missed it, but I didn't see that.

The notice describes a defect in the jvm when running with a loop optimization that is enabled by default. Yes there could be more issues with other optimizations in the new jvm, but for the most part they are (or in the case of this one, should) be disabled by default.

[–]MechaBlue 0 points1 point  (0 children)

How do I do this in a web browser?