Hotspot crash compiling sun.invoke.util.ValueConversions::identity
Eirik Bjørsnøs
eirbjo at gmail.com
Mon Mar 2 01:10:47 UTC 2015
Ladies and gentlemen,
Last week, some of the world's brightest, most capable and all round
good looking Java developers gathered in Crested Butte, Colorado for
the Winter Tech Forum (WTF) 2015 [1].
Wednesday was Hackathon Day, and a group of us decided to embark the
adventure of creating a live Java code coverage engine called Skybar
[2].
We made good progress and by the afternoon we knew we'd have something
good to show at the 8pm showcase. So we confidently headed over to
Ryce Asian Bistro [3] at 17:30 for a nice team dinner.
Luckily we went easy on the saké, because when we came back to
finalise our demo, we found that Hotspot had crashed:
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGBUS (0xa) at pc=0x000000012a6d61e6, pid=10738, tid=18691
[..]
Compiled method (c2) 152453 1542 4
sun.invoke.util.ValueConversions::identity (2 bytes)
Shock, horror! Our demo was just minutes away, would we be able to
present? Our team immediately went into debugging mode:
Could we reproduce without using our -javaagent? No. Was the crash
consistently reproducible? Kind of, but we had to stress test our
code. Was there a any consistency in the hs_err reports? Yes, it
seemed to always involve lambda expressions in out agent code.
The team decided we had to remove all lambdas from our agent code in
the hope that would improve the situation. And it did! At 7:50 PM, we
had a stable build and ran out to make it to the presentations.
Skybar was very well received. Our demo worked. Nothing crashed.
Applause and shouts of "Ship it!" was heard from the audience. It was
good times. We headed over to the Princess Wine Bar [4] for some
celebratory drinks.
The team is continuing our work on Skybar. But we miss our lamdas, and
we want them back! To achieve this, we need help from the Hotspot
team. On our side, we are willing to work with you try to make
reproducible test cases and collect any other useful information.
What would be the best next step in saving Lambas on Agents? We would
love to help out fixing this. Should we file an issue somewhere and
upload our hs_err file(s)?
On behalf of the Skybar team -
Eirik,
[1] http://www.mindviewinc.com/Conferences/JavaPosseRoundup/
[2] https://github.com/WinterTechForum/skybar
[3] http://www.ryceasianbistro.com
[4] https://www.facebook.com/princesswinebar
More information about the hotspot-compiler-dev
mailing list