I've just finished an exhausting hunt for a Heisenbug in a business critical application my organization runs on about 10000 clients. In the end I couldn't believe what I was seeing. My code had this (in a loop)
if (x > y)
and the output was this
WTF???? A Google search turned up this:
This bug has been known since 2004. The bug it has been dup'ed against is marked as "Cause known". There are half a dozen duplicates and even more comments to the existing bugs where people confirm that they have encountered it, too.
Why is this not being fixed? This is the worst possible kind of bug. If my team were maintaining a compiler of any sort and such a bug were reported against it, we would drop everything else until it was fixed. We would certainly not work on more optimizations that speed up a few special cases by a few tenths of a percent. Speed is nice for a compiler, but above all the results have to be correct. If you were given a banking application that works fast as a breeze but every once in a while loses track of a couple million dollars. Would you use it?
I hope Oracle beats some sense into the Sunnies. They obviously have their priorities very very very wrong.