Random java.util.NoSuchElementException exceptions when using perfasm

Aleksey Shipilev shade at redhat.com
Fri Feb 24 12:49:43 UTC 2017


Hi,

Sorry for very delayed reply.

On 01/18/2017 08:34 PM, Bartosz Skrzypczak wrote:
> While trying to find some way to reproduce a JVM crash with
> JMH+perfasm+gc profiler I got the following exception several times:
> 
> # Processing profiler results: LinuxPerfAsmProfiler Exception in
> thread "main" java.util.NoSuchElementException
>     at java.util.TreeMap.key(TreeMap.java:1327)
>     at java.util.TreeMap$NavigableSubMap.firstKey(TreeMap.java:1561)
>     at java.util.TreeSet.first(TreeSet.java:394)
>     at org.openjdk.jmh.profile.AbstractPerfAsmProfiler.figureHotIntervals(AbstractPerfAsmProfiler.java:707)
>     at org.openjdk.jmh.profile.AbstractPerfAsmProfiler.makeRegions(AbstractPerfAsmProfiler.java:670)
>     at org.openjdk.jmh.profile.AbstractPerfAsmProfiler.processAssembly(AbstractPerfAsmProfiler.java:375)
>     at org.openjdk.jmh.profile.AbstractPerfAsmProfiler.afterTrial(AbstractPerfAsmProfiler.java:273)
>     at org.openjdk.jmh.runner.Runner.runSeparate(Runner.java:673)
>     at org.openjdk.jmh.runner.Runner.runBenchmarks(Runner.java:542)
>     at org.openjdk.jmh.runner.Runner.internalRun(Runner.java:313)
>     at org.openjdk.jmh.runner.Runner.run(Runner.java:206)
>     at benchmark.TestBenchmark.main(TestBenchmark.java:80)

Another user reported this with a reproducer, and so we were able to pinpoint
this. This happens when perf happens to report zero events. This should be fixed
with:
  https://bugs.openjdk.java.net/browse/CODETOOLS-7901904

Thanks,
-Aleksey



More information about the jmh-dev mailing list