JDK7 SIGSEGV with G1 garbage collector

Punya Biswal pbiswal at palantir.com
Tue Aug 20 15:05:41 PDT 2013

[Apologies if this message is delivered twice; I sent it once before I
realized this was a members-only list.]

We're running into a JVM segfault when using a third-party library
(Elasticsearch) alongside the G1 garbage collector. This issue has been
reported elsewhere (for example,
https://jira.terracotta.org/jira/browse/CDV-1651) and might already be on
the OpenJDK roadmap. It's usually associated with the use of GNU Trove.

We've been able to reduce the amount of code required to reproduce the
crash to a short program that reliably crashes on my computer
(a MacBook Pro) using only JDK core classes. I've also included the
hs_err_* diagnostic file; both are at
https://gist.github.com/punya/6287943 .

Does this reduced repro help understand what's going on?

A few points of interest:

* running with -XX:+UseG1GC -Dcount=100000 always crashes
* running with -XX:+UseG1GC -Xint -Dcount=100000 never crashes
* running with -Xint -Dcount=100000 never crashes

Using -ea and/or -server don't any effect these results. With regard to
JVM versions,

* it never crashes on JDK 6u51
* it crashes on JDK 7u25 and JDK 7u43 (prerelease)
* it never crashes on JDK 8 (prerelease)

I'm happy to provide a link to a core dump if that helps.

Punya Biswal
Palantir | Engineer
pbiswal at palantir.com | 206 605 2397

More information about the hotspot-dev mailing list