RFR(XS): 8221121: applications/microbenchmarks are encountering crashes in tier5
Erik Gahlin
erik.gahlin at oracle.com
Fri Apr 26 18:06:35 UTC 2019
Looks good.
Erik
> Greetings,
>
> Please review this small patch to address the following:
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8221121
> Webrev: http://cr.openjdk.java.net/~mgronlun/8221121/webrev01/
>
> Description:
>
> The applications/microbenchmarks added to tier5 are failing in some instances (debug builds), with, as an example, the following trace:
>
> #
> # A fatal error has been detected by the Java Runtime Environment:
> #
> # Internal Error (/scratch/opt/mach5/mesos/work_dir/slaves/2dd962d0-8988-479b-a804-57ab764ada59-S77631/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/d8f4cb38-0dec-4477-a89a-f62853433c56/runs/cb3f55fa-9e13-481c-a7d6-9f33d2b8b457/workspace/open/src/hotspot/share/jfr/recorder/storage/jfrMemorySpace.inline.hpp:85), pid=5748, tid=5770
> # assert(t->identity() == __null) failed: invariant
>
> This occurred when JFR was running with the in-memory configuration where buffers are reused FIFO-style.
> In the implementation, an "age node" will manage a full buffer for its reclamation, and age nodes provides for a linked "full" (fifo) list.
>
> Issue:
> The age node was not expected to retain an identity after being added to the full list, where the assertion fired during the subsequent discard-reuse processing step.
> This situation only manifests with running JFR in-memory configurations and using debug builds.
>
> Fix is to release the age node before insertion onto full list.
>
> Thanks
> Markus
More information about the hotspot-jfr-dev
mailing list